A lightweight, portable programming language for both embedded use and stand-alone executables. Written entirely in C, Ember emphasizes:
A compact stack-based VM and optional AST interpreter are included, enabling usage from quick scripting tasks to entire application development.
A clean syntax drawing inspiration from Lua, AngelScript, and Haxe.
Capable of scaling from minimal environments to large-scale applications.
Ensures broad platform support and straightforward integration.
Supports compilation to a fast, stack-based VM using the emberc
command-line compiler, or interpretation of the AST directly.
Encompasses coroutines, optional static typing, a user-friendly syntax, and other advanced capabilities.
Provides a core library, with the ability to import and extend functionality through custom modules.
Offers emberpm
to install and manage Ember modules.
Macros and compile-time meta-programming, pattern matching, hot reloading, inline bytecode, advanced memory operations, and more.
Ember aims to blend the convenience of dynamic scripting languages with the reliability of statically typed systems — all within a minimalist, modern design. Contributions and feedback are always welcome!
Ember is licensed under the MIT License. See LICENSE for details.