Roadmap
Roadmap
Section titled “Roadmap”NXL 0.1 — Frontend
Section titled “NXL 0.1 — Frontend”Completed:
- Lexer
- Parser
- AST
- CLI
- Error handling
NXL 0.2 — Runtime
Section titled “NXL 0.2 — Runtime”Current milestone:
- Runtime values
- Environment
- Interpreter
- Built-ins
- Arithmetic
- Comparisons
- Boolean logic
- Conditionals
- Variables
- Assignments
- Functions
- Return
Target:
let name = "Tanmoy"let age = 23
fn greet(name) { return "Hello, " + name}
if age >= 18 { print(greet(name))}Expected output:
Hello, TanmoyNXL 0.3 — Collections
Section titled “NXL 0.3 — Collections”Potential features:
let numbers = [1, 2, 3, 4]
print(numbers[0])Potential additions:
- Arrays
- Indexing
- Maps
- String methods
- Collection operations
NXL 0.4 — Control Flow
Section titled “NXL 0.4 — Control Flow”Potential features:
forwhilebreakcontinue
NXL 0.5 — Functions & Modules
Section titled “NXL 0.5 — Functions & Modules”Potential features:
- Modules
- Imports
- Exports
- Standard library
Example:
import math
print(math.sqrt(16))NXL 0.6 — Developer Experience
Section titled “NXL 0.6 — Developer Experience”Potential tools:
nxl fmtnxl checknxl runnxl buildAnd eventually:
- Formatter
- Linter
- Language Server
- Editor integrations
- Debugger
NXL 0.7+ — Performance
Section titled “NXL 0.7+ — Performance”The initial interpreter can eventually evolve into a bytecode compiler and virtual machine:
Source ↓Lexer ↓Parser ↓AST ↓Bytecode compiler ↓NXL Virtual MachinePotentially:
Source ↓AST ↓Bytecode ↓VM