Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
861c1d2
docs: add staged roadmap to compiled #lang racket/base hello-world
pmatos Jul 2, 2026
8cbff27
spike(R3): enumerate expander primitive surface (544 free identifiers)
pmatos Jul 2, 2026
cd603cf
docs(roadmap): link milestones to tracking issues #88-115; primitive …
pmatos Jul 2, 2026
4e52ba6
spike(R1): freeze value-model/GC ABI (tagged nr_value + Boehm + flat …
pmatos Jul 2, 2026
f42504c
docs(roadmap): mark R1 done — value-model/GC ABI frozen (#88)
pmatos Jul 2, 2026
a17adcb
spike(R5): rewrite NIR dialect into minimal nir.constant/nir.return s…
pmatos Jul 2, 2026
fbb1be7
docs(roadmap): R5 prepped, blocked on MLIR install (#90)
pmatos Jul 2, 2026
891e0d7
spike(R5): build + verify NIR dialect round-trip under MLIR 22
pmatos Jul 2, 2026
7b7ead9
style: clang-format R1 spike sources (CI format gate globs all .cpp/.h)
pmatos Jul 2, 2026
21839f5
docs(roadmap): mark R5 done & verified under MLIR 22 (#90)
pmatos Jul 2, 2026
1d7b11b
M1: proper tail calls in the CEK interpreter (TDD)
pmatos Jul 2, 2026
972bcf9
docs(roadmap): mark M1 done — proper tail calls (#93)
pmatos Jul 2, 2026
9f8fa2f
M2 (slice 1): shared mutable boxes + eq? identity (TDD)
pmatos Jul 2, 2026
9f038c7
M2 (slice 2): mutable pairs (cons/car/cdr/set-car!/set-cdr!) + pair e…
pmatos Jul 2, 2026
f7cf2a2
M2 (slice 3): interned symbols — identity-based eq? + gensym (TDD)
pmatos Jul 2, 2026
b1eaad7
docs: value-model + Boehm-GC migration plan (19 green TDD slices)
pmatos Jul 2, 2026
f3a6d4d
M2/GC S0: link Boehm GC, GC_INIT, nr_value immediate ABI + heap hooks…
pmatos Jul 5, 2026
0ceb303
M2/GC S1: allocate the continuation (Kont) on the GC heap (TDD)
pmatos Jul 7, 2026
e0e0677
M2/GC S2: introduce the Value handle in the Val/Result registers (TDD)
pmatos Jul 8, 2026
1740c9d
Merge remote-tracking branch 'origin/main' into nora/session-49f3f26f
pmatos Jul 9, 2026
05f0f83
ci: install libgc-dev (bdw-gc) in all build workflows
pmatos Sep 2, 2026
9797fc8
Reject extra arguments to gensym (review thread PRRT_kwDOGWzoJs6PhYDq)
pmatos Sep 2, 2026
490f056
Unwrap quoted symbols before eq?'s identity dispatch (review thread P…
pmatos Sep 2, 2026
0ffb908
Make tail calls through with-continuation-mark constant-space (review…
pmatos Sep 2, 2026
bb7aeea
ci: use lit's internal shell instead of deprecated execute_external=True
pmatos Sep 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/clang-tidy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ jobs:
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y ninja-build libgmp-dev \
sudo apt-get install -y ninja-build libgmp-dev libgc-dev \
"clang-${LLVM_VERSION}" "clang-tidy-${LLVM_VERSION}" \
"clang-tools-${LLVM_VERSION}" "llvm-${LLVM_VERSION}-dev" \
"llvm-${LLVM_VERSION}-tools"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/codecov.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
- name: Install build dependencies
run: |
sudo apt-get update
sudo apt-get install -y ninja-build libgmp-dev lcov gcc-14 g++-14 \
sudo apt-get install -y ninja-build libgmp-dev libgc-dev lcov gcc-14 g++-14 \
"llvm-${LLVM_VERSION}-dev" "llvm-${LLVM_VERSION}-tools" python3-pip
echo "/usr/lib/llvm-${LLVM_VERSION}/bin" >> "$GITHUB_PATH"

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ jobs:
- name: Install build dependencies
run: |
sudo apt-get update
sudo apt-get install -y ninja-build libgmp-dev "clang-${LLVM_VERSION}" \
sudo apt-get install -y ninja-build libgmp-dev libgc-dev "clang-${LLVM_VERSION}" \
"llvm-${LLVM_VERSION}-dev" "llvm-${LLVM_VERSION}-tools"

- name: Initialize CodeQL
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/scan-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ jobs:
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y ninja-build libgmp-dev "clang-${LLVM_VERSION}" \
sudo apt-get install -y ninja-build libgmp-dev libgc-dev "clang-${LLVM_VERSION}" \
"clang-tools-${LLVM_VERSION}" "llvm-${LLVM_VERSION}-dev" "llvm-${LLVM_VERSION}-tools"
echo "/usr/lib/llvm-${LLVM_VERSION}/bin" >> "$GITHUB_PATH"

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
- name: Install build dependencies
run: |
sudo apt-get update
sudo apt-get install -y ninja-build libgmp-dev \
sudo apt-get install -y ninja-build libgmp-dev libgc-dev \
"llvm-${LLVM_VERSION}-dev" "llvm-${LLVM_VERSION}-tools" python3-pip
if [ "${{ matrix.compiler }}" = "clang" ]; then
sudo apt-get install -y "clang-${LLVM_VERSION}"
Expand Down Expand Up @@ -83,7 +83,7 @@ jobs:
- name: Install build dependencies
run: |
sudo apt-get update
sudo apt-get install -y ninja-build libgmp-dev \
sudo apt-get install -y ninja-build libgmp-dev libgc-dev \
"clang-${LLVM_VERSION}" "llvm-${LLVM_VERSION}-dev" \
"llvm-${LLVM_VERSION}-tools" python3-pip
echo "/usr/lib/llvm-${LLVM_VERSION}/bin" >> "$GITHUB_PATH"
Expand Down
6 changes: 6 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,12 @@ endif()

message(STATUS "Found GMP library")

# Configure the Boehm-Demers-Weiser GC (M2 value model). Shipped as pkg-config
# `bdw-gc`; exposes the imported target PkgConfig::BDWGC.
find_package(PkgConfig REQUIRED)
pkg_check_modules(BDWGC REQUIRED IMPORTED_TARGET bdw-gc)
message(STATUS "Found Boehm GC ${BDWGC_VERSION}")

# Configure LLVM
find_package(LLVM REQUIRED CONFIG)
message(STATUS "Found LLVM ${LLVM_PACKAGE_VERSION}")
Expand Down
298 changes: 298 additions & 0 deletions ROADMAP.md

Large diffs are not rendered by default.

Loading
Loading