Skip to content
forked from rxi/fe

A tiny, embeddable language implemented in ANSI C

License

Notifications You must be signed in to change notification settings

noncombatant/fe

 
 

Repository files navigation

Fe

Fe is a tiny, embeddable, Lisp-like language implemented in C23.

This version is a refactored and extended version of the beautiful original by rxi.

Overview

The language offers the following features:

  • Numbers, symbols, strings, pairs, lambdas, and macros
  • Lexically scoped variables
  • Closures
  • Variadic functions
  • Mark-and-sweep garbage collector
  • Stack traceback on error

The implementation aims to fulfill the following goals:

  • Practical for small scripts (extension scripts, configuration files)
  • Small memory usage within a fixed-size, caller-allocated arena — no mallocs
  • Simple mark-and-sweep garbage collector
  • Easy-to-use C API
  • Concise, readable, and portable implementation
  • Extensible — an extension API allows the core to remain small and stable

Documentation

Contributing

Bug reports, pull requests, and questions are welcome.

License

This program is free software; you can redistribute it and/or modify it under the terms of the MIT license. See LICENSE for details.

About

A tiny, embeddable language implemented in ANSI C

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 95.1%
  • Shell 3.5%
  • Makefile 1.4%