Article Complete
AIM
Luon is the New Programming Language Combining Lua and Oberon
Luon is the New Programming Language Combining Lua and Oberon
Code Crossover Chaos

Luon is the New Programming Language Combining Lua and Oberon

The language enables developers to declare external procedures, allowing integration with Lua and C libraries through the LuaJIT foreign function interface.

Published Updated

Key takeaways

  • Luon merges Lua and Oberon features, targeting the LuaJIT VM for enhanced performance.
  • Integrate external procedures easily with Lua and C libraries through the LuaJIT foreign function interface.
  • Utilize new IDE designed specifically for Luon, improving developer experience and productivity.
  • Eliminate pointers in favor of reference semantics, enhancing data handling and safety.
  • Address Lua's shortcomings with features like conditional compilation and efficient constant management.
5 min

Luon, a newly introduced high-level programming language, merges syntax elements from Oberon+, Oberon-07, and Oberon-2, while incorporating features from Lua and targeting the LuaJIT VM. With its statically typed design, Luon offers a fresh take on Lua, as reflected in its name, a combination of “Lua” and “Oberon.”

The language enables developers to declare external procedures, allowing integration with Lua and C libraries through the LuaJIT foreign function interface. This feature enhances the reusability of existing libraries, making Luon a versatile choice for programmers.

The language is announced with a whole new IDE which makes it even better for developers using it. 

According to the project’s creator, Rochus Keller, the development of Luon stems from his experience with Smalltalk-80 and SOM VM implementation, along with aspirations to create a LuaJIT-based Interlisp VM.

While similar to Oberon+, Luon eliminates pointers, relying instead on reference semantics for all structured data types, which are dynamically created. The language introduces key data types such as ARRAY, HASHMAP (ensuring compatibility with Lua), and an immutable STRING type with value semantics.

Luon specifically addresses several shortcomings observed in Lua during prior projects, offering improvements such as:

  • Conditional compilation: Enables or disables debugging statements to save computation time.
  • Efficient constants: Eliminates the need for local slots or hashed element access.
  • Inline declaration: Provides better code structuring without additional context switches.
  • Compile-time error detection: Prevents implicit global declarations and other errors.
  • Strict local usage: Ensures locals cannot be used before declaration.
  • Switch/case statements: Reduces repetitive relational expressions.

The language specification and sample code are available in the project’s repository, providing developers a comprehensive guide to Luon’s capabilities.

Discussions on Hacker News highlight how developers have been waiting for such a programming language. Keller, also present in the discussions, explained that he intercepted his Micron language projects to implement Luon, as this seemed more important to him at this moment.

Membership

Stay ahead with AI insights.

Unlimited access to premium articles, exclusive analysis, and the stories shaping India's AI economy.

Subscribe now

AIM Americas

1190 Miraloma Way Suite P, Sunnyvale, CA 94085

AIM India

1st Floor, Sakti Statesman, Bellandur, Bengaluru – 560103

© 2026 AIM. All rights reserved.