Release Notes: This release adds a language tutorial to the documentation, introducing the basic concepts needed to write lfyre programs.
Release Notes: This release adds many new features: C++ style templates, aliases with parameters, a new 'print' keyword, better names mangling, support for mixing declarations and code, a new template class Array#[T], C++ style declaration scope to 'for', new syntax '(a;b)', several new compile-time keywords to manipulate classes, strings and identifiers, a more relaxed syntax parser, and overloadable array operators 'a[b]', 'a[b,c]', 'a[b..c]'. Calls to a function with arguments of reference type and calls to static and virtual methods now work as expected.
Release Notes: This release adds long-awaited support for virtual methods and a Java-style "super" keyword. It also includes some cleanups in compiler-generated C code.
Release Notes: This release adds several important features, including method and operator overloading, support to create new operators, and support for code placed outside functions and void expression '()'. Some bugs were also fixed, including a few uses of uninitialized memory and corner cases for aliases and functions returning final objects.
Release Notes: This release adds keywords to interface with existing C libraries and headers, support for 'final transient' class fields, and a pure lfyre input/output library. It also updates the examples to use the new IO library, and fixes a bug in key_return_set().
Release Notes: This release adds support for memory qualifiers (const and others), and has several compiler fixes to make code generation more robust. These two enhancements allowed the String benchmark to be rewritten as pure lfyre code: previously, some fragments had to be translated manually to C.
Release Notes: This release adds a source code interpreter, initial method overloading support, aliases, more builtin operators, and fixes a benchmark for a nasty memory leak that was killing performance (the benchmark is now almost twice as fast as exactly equivalent C++ code).
Release Notes: Enhancements include implicit "this", pointer arithmetic, a more complete emit "C" target, a pure lfyre skeleton to interface with the compiler API, a pure lfyre String library with a benchmark, two C++ versions of the same benchmark, and more lfyre example programs.
Release Notes: The compiler is now minimal but usable - it can translate small lfyre programs into C source code.