Skip to content

Releases: InauguralSystems/EigenScript

EigenScript 0.8.1

17 Apr 10:15

Choose a tag to compare

New Builtins

  • monotonic_ns / monotonic_ms — high-precision monotonic timer via clock_gettime(CLOCK_MONOTONIC). Sub-millisecond precision, no fork, no shell.

Runtime

  • System stdlib resolutionload_file and import now search ~/.local/lib/eigenscript/ as fallback after CWD and script-relative paths. make install copies lib/*.eigs there. External projects can use stdlib without copying files.

Documentation

  • Gap analysis for real-world program classes
  • ROADMAP updated with all completed features by version

Testing

  • 614 tests
git clone https://github.com/InauguralSystems/EigenScript.git
cd EigenScript && make install

EigenScript 0.8.0

17 Apr 07:19

Choose a tag to compare

Runtime

  • Reference counting GC — automatic memory management, Values freed when refcount hits zero
  • unobserved: blocks — opt out of observer tracking for performance-critical code. In-place numeric mutation, zero allocation for arithmetic
  • eval_num_fast — pure arithmetic fast path inside unobserved blocks, no intermediate Value allocation

Graphics Extension (SDL2)

  • 13 builtins: gfx_open, gfx_close, gfx_clear, gfx_rect, gfx_line, gfx_point, gfx_circle, gfx_text, gfx_present, gfx_poll, gfx_ticks, gfx_delay, gfx_title
  • Dynamically loads libSDL2 at runtime (no dev headers needed)
  • gfx_text with embedded 5x7 bitmap font, scalable
  • gfx_poll returns events as dicts with key names
  • Build: make gfx

New Builtins

  • Bitwise: bit_and, bit_or, bit_xor, bit_not, bit_shl, bit_shr
  • I/O: write (no newline), flush, raw_key (non-blocking keypress), usleep
  • String: join as C builtin — O(n) single-allocation concatenation

Testing

  • 614 tests (up from 568)
  • Bitwise, I/O, GC stress tests
git clone https://github.com/InauguralSystems/EigenScript.git
cd EigenScript && make install

EigenScript 0.7.1

17 Apr 01:23

Choose a tag to compare

Hardened runtime — same language, safer internals.

Internal

  • strbuf: growable string buffers replace fixed MAX_STR throughout lexer, regex, JSON, REPL
  • xmalloc_array: overflow-safe multiplicative allocations with safe_size_mul
  • builtins_tensor.c: tensor builtins extracted into own file
  • memcpy string concat: replaces strcpy/strcat in evaluator

Security

  • HTTP 404 JSON injection fix
  • realpath confinement for static file serving
  • Dynamic request buffer with EIGS_HTTP_MAX_BODY

Testing

  • 568 tests (up from 552)
  • Large-buffer regression tests for strings, JSON, regex
git clone https://github.com/InauguralSystems/EigenScript.git
cd EigenScript && make install

EigenScript 0.7.0

16 Apr 23:53

Choose a tag to compare

Language

  • Pattern matching: match expr: case pattern: ... with wildcard _
  • Pipe operator: data |> transform |> sort
  • Lambda expressions: (x) => x * 2 with closure capture
  • Break/continue: proper loop control flow
  • Dot-assignment: config.name is "value"
  • Multiline collections: lists and dicts span multiple lines
  • Regex: regex_match, regex_find, regex_replace (POSIX ERE)
  • Import system: import math with namespaced access

Architecture

  • Source split: eigenscript.clexer.c, parser.c, eval.c, builtins.c
  • OOM-safe allocations, recursion depth guard, stack protector

Security

  • Shell injection fix, HTTP Content-Length validation, model dimension overflow guard, softmax NaN guard

Testing

  • 552 tests (up from 224) + 44 fuzz tests under ASAN+UBSan
  • Formal EBNF grammar specification

Install

git clone https://github.com/InauguralSystems/EigenScript.git
cd EigenScript && make install

See CHANGELOG.md for full details.

EigenScript 0.6.0

16 Apr 19:30

Choose a tag to compare

EigenScript is now a complete, standalone programming language.

New Language Features

  • REPLeigenscript with no args for interactive mode
  • Named parametersdefine add(a, b) as: replaces manual n[0]/n[1] unpacking
  • String interpolationf"Hello {name}, {x * 2}"
  • Native dictionaries{} literals, .key dot access, ["key"] bracket access
  • Try/catchtry: ... catch err: ... with throw builtin
  • Closures — functions capture their defining environment
  • eval — execute EigenScript strings at runtime

Meta-Circular Interpreter

  • lib/eigen.eigs: tokenizer, parser, and evaluator written in pure EigenScript
  • EigenScript can now run EigenScript

Standard Library

  • 25 modules covering math, lists, maps, sets, sorting, queues, state machines, templating, logging, CLI args, datetime, config, validation, HTTP, testing, formatting, and the meta-circular interpreter
  • All modules converted to named parameters

Stats

  • 127 builtins
  • 25 stdlib modules
  • 224 tests passing
  • ~140K binary, zero dependencies

Install

git clone https://github.com/InauguralSystems/EigenScript.git
cd EigenScript
./install.sh

See CHANGELOG.md for full details.

EigenScript 0.5.0

16 Apr 17:17

Choose a tag to compare

Initial public release of the C-native EigenScript runtime.

Highlights

  • Observer semantics: every value tracks entropy and trajectory (improving, diverging, stable, converged, oscillating, equilibrium)
  • 121 builtins: tensor math, file I/O, JSON, HTTP, database, and more
  • 24 standard library modules: math, lists, maps, sets, sorting, queues, state machines, templating, logging, CLI args, datetime, config, validation, and more
  • Single C binary (~96K) with no external dependencies
  • Full documentation: language reference, builtin reference, stdlib guide, error diagnostics
  • 121-test suite

Install

git clone https://github.com/InauguralSystems/EigenScript.git
cd EigenScript
./install.sh

See CHANGELOG.md for full details.

v0.4.1

05 Dec 00:58
32a4f9a

Choose a tag to compare

What's Changed

  • Claude/self hosting requirements 01 fg nm fwe2 k ze1k ni zvd5i3c by @InauguralPhysicist in #57
  • Claude/self hosting requirements 01 fg nm fwe2 k ze1k ni zvd5i3c by @InauguralPhysicist in #58
  • Fix blank line handling in self-hosted parser by @Copilot in #59
  • Implement continue statement with scalar equality fix by @Copilot in #60
  • Fix repository consistency issues and add development standards by @Copilot in #61
  • Implement continue statement in self-hosted compiler by @Copilot in #63
  • Remove debug prints and add continue statements to enable self-hosted compiler by @Copilot in #64
  • Fix comment handling in self-hosted lexer for full self-compilation by @Copilot in #65
  • Document compiler self-hosting capability with quickstart and technical guides by @Copilot in #66
  • Document Stage 1 compiler numeric literal bug after investigation by @Copilot in #67
  • Add comprehensive bootstrapping investigation documentation by @Copilot in #68
  • Fix numeric literal bug in self-hosted compiler by @InauguralPhysicist in #69
  • Claude/document bootstrap investigation 011 hg1 ts zt8 l8 wg2 qzqhu roj by @InauguralPhysicist in #70
  • Fix multiple codegen issues in self-hosted compiler by @InauguralPhysicist in #71
  • Claude/document bootstrap investigation 011 hg1 ts zt8 l8 wg2 qzqhu roj by @InauguralPhysicist in #72
  • Claude/document bootstrap investigation 011 hg1 ts zt8 l8 wg2 qzqhu roj by @InauguralPhysicist in #73
  • Claude/document bootstrap investigation 011 hg1 ts zt8 l8 wg2 qzqhu roj by @InauguralPhysicist in #74
  • Fix duplicate function generation in bootstrap Stage 2 by @InauguralPhysicist in #75
  • Fix cross-module global naming mismatch for Stage 2 linking by @InauguralPhysicist in #76
  • Fix Stage 2 codegen issues for valid LLVM IR generation by @InauguralPhysicist in #77
  • Claude/fix stage2 list init 0131n jk l2qiw r azjycj jkux3 by @InauguralPhysicist in #78
  • Update self-hosting quickstart to reflect bootstrap success by @InauguralPhysicist in #79
  • Bump version to v0.4.1 for bootstrap release by @InauguralPhysicist in #80

Full Changelog: v0.4.0...v0.4.1

What's Changed

  • Claude/self hosting requirements 01 fg nm fwe2 k ze1k ni zvd5i3c by @InauguralPhysicist in #57
  • Claude/self hosting requirements 01 fg nm fwe2 k ze1k ni zvd5i3c by @InauguralPhysicist in #58
  • Fix blank line handling in self-hosted parser by @Copilot in #59
  • Implement continue statement with scalar equality fix by @Copilot in #60
  • Fix repository consistency issues and add development standards by @Copilot in #61
  • Implement continue statement in self-hosted compiler by @Copilot in #63
  • Remove debug prints and add continue statements to enable self-hosted compiler by @Copilot in #64
  • Fix comment handling in self-hosted lexer for full self-compilation by @Copilot in #65
  • Document compiler self-hosting capability with quickstart and technical guides by @Copilot in #66
  • Document Stage 1 compiler numeric literal bug after investigation by @Copilot in #67
  • Add comprehensive bootstrapping investigation documentation by @Copilot in #68
  • Fix numeric literal bug in self-hosted compiler by @InauguralPhysicist in #69
  • Claude/document bootstrap investigation 011 hg1 ts zt8 l8 wg2 qzqhu roj by @InauguralPhysicist in #70
  • Fix multiple codegen issues in self-hosted compiler by @InauguralPhysicist in #71
  • Claude/document bootstrap investigation 011 hg1 ts zt8 l8 wg2 qzqhu roj by @InauguralPhysicist in #72
  • Claude/document bootstrap investigation 011 hg1 ts zt8 l8 wg2 qzqhu roj by @InauguralPhysicist in #73
  • Claude/document bootstrap investigation 011 hg1 ts zt8 l8 wg2 qzqhu roj by @InauguralPhysicist in #74
  • Fix duplicate function generation in bootstrap Stage 2 by @InauguralPhysicist in #75
  • Fix cross-module global naming mismatch for Stage 2 linking by @InauguralPhysicist in #76
  • Fix Stage 2 codegen issues for valid LLVM IR generation by @InauguralPhysicist in #77
  • Claude/fix stage2 list init 0131n jk l2qiw r azjycj jkux3 by @InauguralPhysicist in #78
  • Update self-hosting quickstart to reflect bootstrap success by @InauguralPhysicist in #79
  • Bump version to v0.4.1 for bootstrap release by @InauguralPhysicist in #80

Full Changelog: v0.4.0...v0.4.1

v0.4.0

02 Dec 23:19
f27c2f1

Choose a tag to compare

What's Changed

Full Changelog: v0.3.23...v0.4.0

v0.3.23

30 Nov 18:55
1ebbe90

Choose a tag to compare

What's Changed

Full Changelog: v0.3.22...v0.3.23

Introspective AI & Transformer Architecture

30 Nov 02:11
bdb7174

Choose a tag to compare

What's Changed

Full Changelog: v0.3.21...v0.3.22