-
-
Notifications
You must be signed in to change notification settings - Fork 1
Home
zombocoder edited this page Aug 21, 2025
·
3 revisions
Welcome to the o2l wiki!
- Language Overview - Complete introduction to O²L
- Syntax Guide - Detailed syntax documentation
- Type System - O²L's type system and data types
- Object System - Objects, properties, and methods
- Memory Management - Mutability and memory model
- Standard Library - Built-in libraries and functions
- FFI Integration - Foreign Function Interface
- Protocol System - Protocols and interfaces
- Module System - Import/export and package management
- Error Handling - Exception handling and result types
- Concurrency - Threading and async patterns
- Runtime Environment - Virtual machine and execution
- Compiler Architecture - Lexer, parser, and interpreter
- AST Structure - Abstract syntax tree documentation
- Runtime Systems - Core runtime components
- Language Server - LSP implementation and tooling
- Build System - CMake configuration and compilation
- Getting Started - Your first O²L program
- Code Examples - Practical programming examples
- Best Practices - Idiomatic O²L programming
- Migration Guide - Coming from other languages
Object HelloWorld {
@external method main(): Void {
System.println("Hello, O²L World!")
}
}
O²L is a modern programming language that emphasizes:
- Object-oriented design with immutable properties
- Strong typing with type inference
- Memory safety through controlled mutability
- FFI integration for native library interop
- Protocol-based interfaces for flexible abstractions
- Modern standard library with built-in HTTP, JSON, and more
- Dual mutability system (immutable object properties, mutable method variables)
- Advanced type system with records, enums, and protocols
- Native FFI support for C library integration
- Built-in HTTP client/server, JSON handling, regular expressions
- Comprehensive standard library for system operations
- Module system with import/export capabilities
- Exception handling with try-catch-finally blocks
- Iterator protocol for collections and custom types
This documentation covers O²L version 0.0.1 and is continuously updated.