Release Notes: The multiple inheritance support has been dropped. The object value definition algorithm has been significantly simplified. The object statefulness functionality has been replaced by eager value evaluation. Changes have been made to the syntax of sentences, local declarations, and value assignment to avoid any possible conflicts. New features include static fields, aliases, yield statement, short adapter declaration syntax, and short field override syntax. Some rarely used and confusing features were removed.
Release Notes: Stateful objects can be constructed now with a keep value (\\) operator. The value of a stateful object is evaluated at most once, in contrast to a standard stateless object, the value of which is evaluated on each request. The binding statement (<-) is now used to assign new values to variables. In addition, a value assignment statement (=) can be used to perform the assignments in a more traditional imperative manner. The combined assignment statements (+=, -=, *=, /=) have been added.
Release Notes: The type arguments syntax have been fully reworked. The link dereferencing behavior has been changed significantly. A new initializers syntax has been implemented.
Release Notes: The imperative and declarative codes are almost fully unified. The difference between them is that the declarative blocks may contain member declarations, while the imperative blocks can loop. Locals can be declared anywhere now. A new syntax allows declaring the local along with its scope. Phrases may contain intervals now. Some scope references, unary operators syntax, and line continuation rules have been changed.
Release Notes: Type parameters can be declared for any object now. Two new operators support have been added, a compare operator (<=>) suitable to perform a generic comparison and a suffix one (~) capable of representing things such as quantities. Hexadecimal, binary, and floating point literals syntax support has been added. Other syntax improvements have been made. A lot of bugs were fixed. The language runtime license has been changed to the MPL-2.0.
Release Notes: This release contains a lot of fixes to most of the compiler subsytems. Array items are accessed using ordinary phrases now instead of a special technique used before. The link dereferencing rules was refined.
Release Notes: This is a significant change in language semantics. Object values are stateless by default, which means they are not preserved, but evaluated on each request. This makes objects act like functions. To preserve the once evaluated value, a new 'keep value' operator can be used. The language runtime license has been changed to the LGPLv3.
Release Notes: This release extends macro support and provides several standard macros. It contains significant syntax changes. An original tilde-based comments syntax replaces foreign C-style comments. Text blocks can be used to declare multi-line strings.
Release Notes: This release introduces macro support. For now, the macro usage is limited to type parameters. This brings generics to the language. The macro support will be enhanced over time to bring more metaprogramming approaches.
Release Notes: This is a milestone release, which means that the core language functionality is implemented. The core libraries are to be implemented during the 0.2.x development cycle. This release contains a few syntax improvements, several new tests, and numerous fixes.