Skip to content

BioLang v0.1.0 — First public release

Choose a tag to compare

@Enoch-199811 Enoch-199811 released this 09 Aug 03:18
· 11 commits to main since this release

BioLang v0.1.0 — First public release

A stream-oriented programming language in C: interpreter + source-embedding
compiler. Every operation is a request that may be refused (res / cause);
programs are built from composable streams (Unistream, Comstream, Remstream,
Objstream, Threadstream, Timestream, IOStream, ...). MIT licensed.

Downloads

Prebuilt release trees for 7 platforms (launcher + shared runtime in lib/):

Package Contents Run
BioLang-v0.1.0-linux-x86_64.tar.gz bin/bio + lib/libbio.so ./bin/bio
BioLang-v0.1.0-linux-arm64.tar.gz bin/bio + lib/libbio.so ./bin/bio
BioLang-v0.1.0-macos-x86_64.tar.gz bin/bio + lib/libbio.dylib ./bin/bio
BioLang-v0.1.0-macos-arm64.tar.gz bin/bio + lib/libbio.dylib ./bin/bio
BioLang-v0.1.0-win64.zip bin/bio.exe + lib/bio.dll bin/bio.bat
BioLang-v0.1.0-win32.zip bin/bio.exe + lib/bio.dll bin/bio.bat
BioLang-v0.1.0-win-arm64.zip bin/bio.exe + lib/bio.dll bin/bio.bat

Source tarballs (auto-generated) — build with make or make PROFILE=release.

Highlights

  • Interpreter & compiler: run .bio sources directly (bio file.bio), or
    compile to a self-contained native executable with bio shell build (default
    output bin/<name>; the runtime libbio.a is linked in — no bio needed at
    runtime).
  • Stream model: signature streams, forked implementations, classes-as-streams.
  • Typed smart references: 28 reference types (7 permission stacks r/w/m/rw/rm/wm/rwm
    × 4 follows u/f/a/t). Read with get p, write with p = v, move the pointer
    with p++ (m permission, like C's a++); ref/cause prefix unwrapping.
  • need assumption system: on-demand provider bundling from src/ + utils/
    • dependencies; project manifests (package.toml) with git/HTTP/local
      dependency fetching.
  • Package formats: bio can pack/unpack .img and .zip archives
    (src/pack.c).
  • Memory: dynamic block-based arena (no fixed 8 MiB ceiling), configurable
    limit via -m / BIO_MEM_LIMIT (default 256 MiB in interpreted mode, no
    limit in compiled products unless set).
  • Rich IO: CIO / FIO / SIO byte & text streams (per-stream file handles),
    computation streams, timers; @onlyread / @unfork stream annotations.
  • Cross-platform: cooperative threads via ucontext (POSIX) with a Win32
    fiber backend; dlopen shim (bio_dlsym); make bin cross-compiles all 7
    platform trees with zig.
  • 14 runnable teaching examples (examples/) + a complete sample project.
  • VSCode extension: syntax highlighting, snippets, completions, run/compile
    commands (vscode/biolang-vscode/).

Platform status

  • Linux x86-64 / aarch64 — fully supported
  • macOS — works (ucontext deprecation warnings on Intel; Apple Silicon
    ucontext is known-buggy, use the release binary)
  • Windows — experimental (new fiber backend; built and packaged, community
    testing welcome)

Known limitations

  • Threadstream / Areastream not yet declarable as explicit stream types.
  • Compiler embeds source + links the interpreter runtime; true AST→machine-code
    compilation is future work.

MIT © 2026 BioLang contributors