Hello! I'm LunaStev, the developer of Wave.
We are excited to launch Loa 'v0.0.1-alpha' —
Loa is a programming language focused on simplicity, readability, and ease of use. It is an interpreted language with a clean and minimal syntax, designed to make programming accessible and straightforward.
Loa supports basic programming constructs such as variables, conditionals, loops, and functions, making it suitable for a wide range of general-purpose tasks.
📐 Language Specification Updates
🧠 Basic Syntax and Structure Introduced
-
Loa now supports essential language features for scripting and simple application development:
- Variable assignment without type declaration (e.g., x = 10)
- Indentation-based block structure (no {} needed)
- UTF-8 fully supported for strings (e.g., Korean, Japanese)
- Basic expressions with arithmetic and comparison operators
This foundation enables readable, simple, and lightweight coding experiences.
✅ Added Features
🧠 Core Language Features
Lexer, Parser, and Interpreter fully implemented
-
Support for:
- Variable assignment
- Arithmetic operations (+, -, *, /)
- Comparison operations (<, >, ==, !=)
- print function with multiple arguments
- while loops
- if / else if / else conditional structures
- Unicode (UTF-8) string handling
🧠 REPL (Read-Eval-Print Loop) Environment
Interactive REPL for immediate code execution
Supports variable declarations and expressions inside REPL
🔧 Bug Fixes
🐞 UTF-8 Handling in Lexer
Fixed issues where non-ASCII characters (e.g., Korean) caused tokenizer crashes
Lexer now correctly advances and peeks UTF-8 multi-byte characters
🐞 Indentation-Based Block Parsing
Fixed parsing issues where inconsistent Indent/Dedent handling caused parsing failures
Parser now correctly recognizes Indentation as block start/end
✨ Other Changes
🧠 WaveError-based Error System Integration
Syntax errors now use a structured error format
Error messages include file name, line, and column information (basic version)
🧠 Initial Target Binary Releases
-
Built binaries for:
- Linux aarch64
- Linux x86_64 (GNU and MUSL)
- Windows x86_64
Thank you for using Loa! Stay tuned for future updates and enhancements.
Contributor
@lunastev | 🇰🇷