fix: C backend String functions, record type aliases, docs cleanup

- Add String.fromChar, chars, substring, toUpper, toLower, replace,
  startsWith, endsWith, join to C backend
- Fix record type alias unification by adding expand_type_alias and
  unify_with_env functions
- Update docs to reflect current implementation status
- Clean up outdated roadmap items and fix inconsistencies
- Add comprehensive language comparison document

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-02-16 01:06:20 -05:00
parent ba3b713f8c
commit 33b4f57faf
11 changed files with 1694 additions and 571 deletions

View File

@@ -150,6 +150,15 @@ Time.sleep(1000) // milliseconds
let obj = Json.parse("{\"name\": \"Alice\"}")
let str = Json.stringify(obj)
// SQL database effects
let db = Sql.openMemory()
Sql.execute(db, "CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)")
Sql.execute(db, "INSERT INTO users (name) VALUES ('Alice')")
let users = Sql.query(db, "SELECT * FROM users")
Sql.beginTx(db)
Sql.commit(db) // or Sql.rollback(db)
Sql.close(db)
// Module system
import mymodule
import utils/helpers as h
@@ -179,10 +188,6 @@ fn processModern(x: Int @v2+): Int = x // v2 or later
fn processAny(x: Int @latest): Int = x // any version
```
### Planned (Not Yet Fully Implemented)
- **Auto-migration Generation**: Migration bodies stored, execution pending
---
## Primary Use Cases
@@ -235,7 +240,7 @@ Quick iteration with type inference and a REPL.
|------------|-------------|
| **New Paradigm** | Effects require learning new concepts |
| **Small Ecosystem** | Community packages just starting |
| **No Package Registry** | Can share code via git/path, no central registry yet |
| **Young Package Registry** | Package registry available, but small ecosystem |
| **Early Stage** | Bugs likely, features incomplete |
---
@@ -374,18 +379,10 @@ Values + Effects C Code → GCC/Clang
- ✅ Formatter
**In Progress:**
1. **Schema Evolution** - Type-declared migrations working, auto-generation pending
2. **Error Message Quality** - Context lines shown, suggestions partial
3. **Memory Management** - RC working for lists/boxed, closures/ADTs pending
**Recently Completed:**
-**JavaScript Backend** - Full language support, browser & Node.js
-**Dom Effect** - 40+ browser manipulation operations
-**Html Module** - Type-safe HTML construction (Elm-style)
-**TEA Runtime** - The Elm Architecture for web apps
-**Package Manager** - `lux pkg` with git/path dependencies, module integration
1. **Memory Management** - RC working for lists/boxed, closures/ADTs pending
2. **Serialization Codecs** - JSON codec generation for versioned types
**Planned:**
4. **SQL Effect** - Database access (as a package)
5. **Package Registry** - Central repository for sharing packages
6. **Behavioral Type Verification** - Total, idempotent, deterministic checking
- **Connection Pooling** - Pool database connections
- **WASM Backend** - WebAssembly compilation target
- **Stream Processing** - Stream effect for data pipelines