977a2cd654
- Register print/println/log/print_err in TypeEnv::with_builtins() with polymorphic (Unknown) param type so any value type is accepted without spurious warnings
- Add StructLit expr to AST + parser (uppercase-IDENT { ... } syntax), BuildStruct bytecode instruction + Struct value to runtime
- Add type_params to FnDef AST node and TypeParam variant to TypeExpr; parser parses <T, E> generics; type checker treats TypeParam as Unknown (universal type)
- Rewrite interpreter to support user-defined function calls via call stack (Frame + return_ip); dispatch_builtin handles print/println/log/print_err/__build_list__
- Fix engram_activate_search to unwrap { results: [...] } response envelope from /search; use std::net for sync HTTP to avoid reqwest dependency
- Add run-file command to CLI for single-file execution without el.toml
- Fix worktree engram-crypto path dep
45 lines
1.1 KiB
TOML
45 lines
1.1 KiB
TOML
[workspace]
|
|
members = [
|
|
"crates/el-lexer",
|
|
"crates/el-parser",
|
|
"crates/el-types",
|
|
"crates/el-compiler",
|
|
"crates/el-seal",
|
|
"crates/el-manifest",
|
|
"crates/el-registry",
|
|
"crates/el-build",
|
|
"crates/el-test",
|
|
"bin/el",
|
|
]
|
|
resolver = "2"
|
|
|
|
[workspace.package]
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
license = "MIT"
|
|
authors = ["Neuron Technologies"]
|
|
|
|
[workspace.dependencies]
|
|
# Internal crates
|
|
el-lexer = { path = "crates/el-lexer" }
|
|
el-parser = { path = "crates/el-parser" }
|
|
el-types = { path = "crates/el-types" }
|
|
el-compiler = { path = "crates/el-compiler" }
|
|
el-seal = { path = "crates/el-seal" }
|
|
el-manifest = { path = "crates/el-manifest" }
|
|
el-registry = { path = "crates/el-registry" }
|
|
el-build = { path = "crates/el-build" }
|
|
el-test = { path = "crates/el-test" }
|
|
|
|
# Engram crypto (path dep — the sealed target depends on it)
|
|
engram-crypto = { path = "../../../../engram/crates/engram-crypto" }
|
|
|
|
# External
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
thiserror = "2"
|
|
blake3 = "1"
|
|
aes-gcm = "0.10"
|
|
rand = "0.8"
|
|
clap = { version = "4", features = ["derive", "env"] }
|