Lumen 1.2.0-BETA
release29 апреля 2026 г.Changelog
This release includes major internal rewrites and multiple breaking changes. If you already have existing scripts, they may require updates before working correctly on this version.
Breaking Changes
Type System Overhaul
The type system has been fully redesigned.
- Exact types are now known throughout parsing
- Stronger guarantees and clearer validation
- Legacy type behavior has been removed
Global Variables Rewritten
Global variables have been completely revamped.
- Improved consistency
- Better type-awareness
- Cleaner internal behavior
- Trying to use the old global syntax will immediately throw
Explicit Nullability
Null handling is now explicit and type-aware.
- Variables cannot be assigned
noneunless declared nullable from the start - Variables that are meant to be nullable must provide the exact type
Coercion Removed
Automatic coercion has been removed.
Previously, a variable declared as one type could sometimes receive another type. That behavior is gone.
Example:
- Declared as
string→ cannot assignint - Declared as
int→ cannot assign unrelated types
This prevents many runtime surprises.
Lists and Maps Updated
Lists and maps have been partially rewritten.
- Typed collections are now emphasized
- Legacy untyped collections will immediately throw
Fixes & Improvements
Much Better Error Messages
Almost all diagnostics have been significantly improved.
- Clearer explanations
- Better highlights
- More actionable help messages
Smarter Unknown Pattern Handling
Unknown statements, conditions, expressions, loop sources, and blocks are now handled far better.
Instead of throwing a generic "Unknown X" even when the issue is only a typo, the matcher can now detect:
- Extra tokens
- Typos
- Missing values
- Type binding failures
- Closest-match suggestions
Fewer Runtime Surprises
With coercion removed and stronger typing, many issues are now caught earlier instead of failing later at runtime.
Data Classes Expanded
Data classes now support all types instead of being limited to only a small subset.
General Stability Improvements
Many additional fixes, cleanups, and internal improvements were made across the project.
Pattern Changes
Many patterns now use required groups instead of duplicated matching logic.
Performance
Faster Parsing
Parsing performance is now significantly faster (2.5x+ in many cases).
This was achieved through:
- Parallel parsing of independent blocks
- Faster pattern indexing
- Cheaper pattern matching
Experimental Compiler: Vanta
A new experimental compiler backend, Vanta, is available.
Benefits:
- Much faster startup compilation
- Up to 35x faster compile times in many scenarios (average about 10x faster)
Vanta is currently in beta.
API Changes
Statement Form Handlers Removed
Statement form handlers have been removed.
Ref Types Removed
Legacy Ref Types and related classes are gone, replaced by unified LumenType.
Single parameter handlers
Instead of inconsistent signatures in statements, expressions, and conditions. All of them now receive a unified HandlerContext.
Final Note
This release is a major step forward in correctness, tooling quality, performance, and long-term architecture. However, keep in mind, this version is more beta than other releases due to the many breaking changes. There will be more edge cases.
Small improvements
release14 марта 2026 г.This release fixes minor bugs and improves the overall API.
Lumen 1.0.5-BETA
release14 марта 2026 г.Breaking Changes
Support for implicit arguments has been removed.
Previously, it was possible to omit certain arguments, for example:
message "Test"
You must now explicitly provide the variable:
message player "Test"
This change improves determinism in pattern matching and simplifies tooling.
Internal Changes
- Refactored the type system, including multiple small bug fixes and improvements to inline expression handling.
- The defaults module has been restructured and split into multiple files.
- documentation.json has been updated on lumendocs.dev.
Lumen 1.0.2-BETA
release3 марта 2026 г.Initial release, this may contain bugs.

