• v5.10.0 c7ebe8bbfa

    v5.10.0 — Self-hosted CLI promotion, compiler modularization, stdlib enhancements
    Some checks failed
    CI / build-and-test (push) Waiting to run
    GitHub Mirror / mirror (push) Has been cancelled
    Stable

    root released this 2026-03-19 23:53:31 -03:00 | 78 commits to main since this release

    Self-Hosted Compiler Modularization

    • Compiler backend extracted: Separated bytecode + NASM codegen into lib/compiler_backend.kd
    • Frontend shared: lib/bootstrap_frontend.kd refactored

    Self-Hosted CLI Promotion (#058)

    • KODER_PREFER_SELFHOSTED: Opt-in env var to prefer self-hosted implementations
    • Promoted routes: fmt, pkg, js, wasm, repl, lsp, debug
    • Authority matrix: docs/selfhosted-transition.md defines parity gates

    Standard Library

    • File.append: New method for appending content to files
    • Net module: Cookies, multipart, follow_redirects, max_redirects
    • YAML: Tagged value support (!!str, !!int, !!float, !!bool, custom !tag)
    • Archive: RAR list/extract, 7-Zip list/extract/create

    CI/CD

    • GitHub mirror: Auto-mirror to GitHub on push (secret-gated)
    • CI hardening: Self-hosted driver toolchain checks

    Backlog Completed

    • #031 GitHub mirror
    • #044 Self-hosted package manager
    • #053 XML parser
    • #054 YAML parser
    • #058 Self-hosted Rust decommission plan
    Downloads
  • v5.6.0 e2ce780c06

    v5.6.0
    Some checks are pending
    CI / build-and-test (push) Waiting to run
    Stable

    root released this 2026-03-16 22:45:43 -03:00 | 107 commits to main since this release

    refactor: simplificar bootstrap_frontend e atualizar compiler/native_test

    Downloads
  • v5.5.0 cd0ac7834d

    v5.5.0 — OOP in Native Codegen: Classes, Methods, Ivars
    Some checks are pending
    CI / build-and-test (push) Waiting to run
    Stable

    root released this 2026-03-16 19:20:06 -03:00 | 114 commits to main since this release

    What's New

    Native OOP Support

    Koder can now compile classes with instance variables and methods to standalone x86_64 ELF binaries:

    class Counter
      def initialize(n)
        @n = n
      end
      def value
        return @n
      end
    end
    c = Counter.new(99)
    puts c.value  # => 99
    

    1173-byte standalone ELF binary

    Implementation Details

    • CLASS_DEF assigns sequential class IDs
    • Objects: 80-byte heap blocks with class_id + 8 ivar slots
    • STORE_IVAR/LOAD_IVAR: ivar access at [self + 16 + idx*8]
    • Method dispatch: class_id comparison chain
    • Self passed implicitly at [rbp+16]

    Native Codegen Summary

    Feature Status
    Integers + arithmetic
    Strings (alloc, concat, to_s)
    Variables
    If/else, while
    Functions (def/call/return)
    Arrays (literal, index, push)
    Hashes (alloc, set, get)
    Classes (new, ivars, methods) NEW
    Comparisons, logical ops

    Backlog

    • #052: ZIP/RAR/7z archive support
    • #053: XML parser
    • #054: YAML parser
    Downloads
  • v5.4.0 ad7968c47a

    v5.4.0 — Arrays, String Concat, Native Runtime v4
    Some checks are pending
    CI / build-and-test (push) Waiting to run
    Stable

    root released this 2026-03-16 17:51:39 -03:00 | 118 commits to main since this release

    What's New in v5.4.0

    Native Runtime v4 (491 bytes)

    • Array operations: arr_alloc, arr_push (auto-grow), arr_get, arr_length
    • String concat: heap-allocated string concatenation via tagged values
    • Int-to-string: x.to_s converts integer to heap string
    • NOT opcode: logical negation

    Native Codegen Features

    Feature Status
    Integers + arithmetic
    String literals
    String concatenation
    Int-to-string (to_s)
    Variables
    If/else
    While loops
    Functions (def/call/return)
    Arrays (literal, index, push) NEW
    Comparisons (all 6)
    Logical (&&, ||, !)
    Booleans, nil

    Tests

    • 14 native ELF tests passing (675-981 byte binaries)
    • 11 VM bootstrap tests passing
    • 20 Rust integration tests passing

    Self-Hosting Progress

    • Tickets #036 (runtime) and #038 (arrays) partially complete
    • String runtime fully functional
    • Array runtime with auto-grow support
    Downloads
  • v5.3.0 dabcadb533

    v5.3.0 — Native Runtime: Heap, Strings, int-to-string
    Some checks are pending
    CI / build-and-test (push) Waiting to run
    Stable

    root released this 2026-03-16 14:41:48 -03:00 | 120 commits to main since this release

    What's New in v5.3.0

    Native Runtime (364 bytes)

    Embedded x86_64 runtime with 7 routines:

    • heap_init — brk-based heap allocator (r14/r15 registers)
    • heap_alloc — bump allocator with 8-byte alignment
    • str_alloc — allocate [length][data] strings on heap
    • str_concat — concatenate two heap strings
    • str_print — write string + newline to stdout
    • str_from_int — convert integer to heap string
    • print_int — direct integer output

    Tagged Values

    • Negative values = string pointers (negated)
    • Non-negative values = integers
    • ADD checks tag: string concat or integer add
    • PRINT checks tag: str_print or print_int

    New Features

    • String concatenation: "Hello" + " World" → 688-byte binary
    • Int-to-string: x.to_s via METHOD_CALL → str_from_int
    • "Answer: " + x.to_sAnswer: 42 in 668-byte binary
    • String length via METHOD_CALL length 0

    Self-Hosting Roadmap

    8 backlog tickets (#036-#043) for complete bootstrap self-compilation:

    • #036 Native runtime (IN PROGRESS)
    • #037 String concat/interpolation
    • #038 Arrays & hashes
    • #039 Classes & OOP
    • #040 Closures & blocks
    • #041 Exceptions
    • #042 Minimal stdlib
    • #043 Bootstrap self-compile
    Downloads
  • v5.2.0 a742bfb9e9

    v5.2.0 — Native Codegen: Variables, Control Flow & Logical Ops
    Some checks are pending
    CI / build-and-test (push) Waiting to run
    Stable

    root released this 2026-03-16 12:39:45 -03:00 | 127 commits to main since this release

    What's New in v5.2.0

    Self-Hosted Native Code Generator

    Koder can now compile programs to standalone x86_64 ELF binaries (238-439 bytes) via its self-hosted pipeline:

    source → tokenize → parse → compile → native x86_64 ELF → execute
    

    Supported in native codegen:

    • Integer constants and arithmetic (+, -, *, /, %)
    • String output (inline sys_write)
    • Variables (STORE/LOAD with rbp-relative addressing)
    • All comparisons (<, >, ==, !=, <=, >=)
    • Logical operators (&&, || with short-circuit)
    • If/else with label patching
    • While loops with backward branching
    • Function definitions and calls (FUNC/CALL/RETURN with stack frames)
    • Multiple functions in same binary
    • Booleans, nil, POP, DUP

    15 Native ELF Tests Passing

    Test Program Result Size
    NT1 puts 42 42 238B
    NT2 1+2*3 7 260B
    NT7 fib(10) iterative 55 410B
    NT11 puts "Hello, Koder!" Hello, Koder! 264B
    NT13 add(3,4) 7 346B
    NT14 square(9) 81 325B
    NT15 double(7) + triple(5) 14, 15 439B

    Bootstrap Self-Hosted Pipeline

    • 3800+ lines of Koder processing Koder
    • 11 VM bytecode tests + 15 native codegen tests
    • Full tokenizer, parser, compiler, VM, and native codegen

    Parser Fixes

    • Added % (modulo), !=, <=, >= operators
    • Added string literal tokenization (double/single quotes)
    • Fixed JUMP dispatch operator bug

    Infrastructure

    • Version 5.2.0
    • 20 Rust integration tests passing
    • Backlog #035: Native HTTP protocol & server (pending)
    Downloads
  • v5.0.0 a1451d1747

    v5.0.0 — SELF-HOSTING: Koder compiles to native ELF!
    Some checks are pending
    CI / build-and-test (push) Waiting to run
    Stable

    root released this 2026-03-16 11:15:17 -03:00 | 131 commits to main since this release

    Koder v5.0.0 — Self-hosting Achieved!

    Koder can now compile its own source code to native x86_64 ELF binaries.

    Full pipeline running entirely in Koder:

    source → tokenize → parse → compile → native x86_64 ELF binary
    

    koder_compile_native("puts 42", "/tmp/output") generates a 180-byte standalone executable.

    Self-hosted bootstrap: 3392 lines

    • 100+ language features
    • 100+ built-in methods
    • 50+ stdlib modules (all implemented)
    • Native x86_64 ELF code generation
    • 11/11 bootstrap tests

    Rust workspace

    • 21 crates, ~95K+ lines, 3124 tests
    Downloads
  • v4.5.0 d9f7dd3308

    v4.5.0 — ALL 50+ stdlib modules self-hosted, 3285 lines
    Some checks are pending
    CI / build-and-test (push) Waiting to run
    Stable

    root released this 2026-03-16 11:00:12 -03:00 | 132 commits to main since this release

    Self-hosting: 3285 lines, ALL 50+ stdlib modules implemented (no stubs), 100+ features, 100+ built-in methods. Full pipeline: source → tokenize → parse → compile → VM.

    Downloads
  • v4.4.0 7e4a39ba0b

    v4.4.0 — Self-hosting: 2929 lines, 100+ features, 50+ stdlib modules
    Some checks are pending
    CI / build-and-test (push) Waiting to run
    Stable

    root released this 2026-03-16 10:46:43 -03:00 | 135 commits to main since this release

    Koder v4.4.0 — Self-hosting Milestone

    Full Koder-in-Koder pipeline: source → tokenize → parse → compile → bytecode VM → output

    • 2929 lines of self-hosted Koder code
    • 100+ language features, 100+ built-in methods
    • 50+ stdlib modules registered (15 with real implementations)
    • 11/11 bootstrap tests passing
    • Classes, inheritance, blocks, each/map/select/reduce
    • File I/O, Math, JSON, Crypto, Base64

    Rust workspace: 21 crates, ~95K+ lines, 3124 tests

    Downloads
  • v4.3.0 cf1ebe7364

    v4.3.0 — 100+ features, File I/O, stdlib modules
    Some checks are pending
    CI / build-and-test (push) Waiting to run
    Stable

    root released this 2026-03-16 10:28:30 -03:00 | 138 commits to main since this release

    Self-hosting: 2789 lines, 100+ features, 100+ built-in methods, 8 stdlib modules (File, Math, JSON, Time, Process, ENV). Full pipeline: source → tokenize → parse → compile → VM.

    Downloads