Skip to content

Luma v0.1.2 - Enhanced Error Reporting

Latest

Choose a tag to compare

@TheDevConnor TheDevConnor released this 27 Nov 18:49

A maintenance release improving compiler diagnostics and refining type semantics.

What's New

Improved Error Messages

The compiler now provides detailed, actionable error messages with source context:

error: could not compile due to 2 previous errors

error[TypeError]: Array types must declare a size, expected ';' after element type
  --> tests/test.lx:3:27
   |
 3 | pub const foo -> fn () [int] {
   |                           ^ Parser Error
   |

error[TypeError]: Expected return type after function parameters
  --> tests/test.lx:3:27
   |
 3 | pub const foo -> fn () [int] {
   |                           ^ Parser Error
   |

Improvements:

  • Error counts showing total issues before compilation fails
  • Categorized errors (TypeError, SyntaxError, etc.)
  • Visual indicators pointing to exact problem locations
  • Clear messages explaining what was expected

Type Refinement: charbyte

The char type has been renamed to byte for clarity:

// Before
let c: char = 'A';
let buffer: *char = alloc(256);

// Now
let c: byte = 'A';
let buffer: *byte = alloc(256);

This better represents 8-bit values and aligns with systems programming conventions.

Breaking Changes

⚠️ char renamed to byte - Update all occurrences in your code:

# Quick migration
find . -name "*.lx" -exec sed -i 's/\bchar\b/byte/g' {} +

Standard Library

All standard library modules updated to use byte:

  • string.lx - String functions use *byte
  • memory.lx - Memory operations updated
  • sys.lx - System calls use *byte for buffers
  • io.lx - I/O functions adapted

Installation

Pre-built:

From source:

git clone https://github.com/Luma-Programming-Language/Luma.git
cd luma
git checkout v0.1.2
make
sudo ./install.sh

Community


Made with care by the Luma Team
GitHub: Luma-Programming-Language/Luma