Skip to content

v1.5.0 - apollovm: 0.1.40#7

Merged
gmpassos merged 1 commit into
mainfrom
update-apollovm-0.1.40
Jun 26, 2026
Merged

v1.5.0 - apollovm: 0.1.40#7
gmpassos merged 1 commit into
mainfrom
update-apollovm-0.1.40

Conversation

@gmpassos

Copy link
Copy Markdown
Contributor

Update to ApolloVM 0.1.40 (folding in 0.1.38 and 0.1.39) and grow the playground with examples for the new language features.

Every new example is verified to run: interpreted examples through ApolloVM, and the new Wasm examples executed end-to-end in the browser via the Wasm runtime (results checked: classify(7)→200, bitCount(13)→3, sumTo(5)→15).

Upstream changes covered

  • 0.1.38: switch/case, do/while, break/continue, bitwise operators, C# lambda parsing, enum declarations.
  • 0.1.39: enum runtime value access, generic classes.
  • 0.1.40: Wasm switch/case + do/while + bitwise; Kotlin/Lua bitwise; Kotlin member visibility.

New "Example" picker entries

  • C# — Lambdas (Func delegate).
  • Switch/case — Dart, Java11, JavaScript, TypeScript, C#; When (Kotlin); Match/case (Python). Run with 2.
  • Do/while loop — Dart, Kotlin; Repeat/until loop (Lua). Run with 3.
  • Bitwise — Dart/Java11/C# (& | ^ << >> ~), Kotlin (and/or/xor/shl/shr), Lua (& | ~ << >>). Run with 12, 10 (Lua uses literals).
  • Enum — ordinal value (Dart/Java11/Kotlin/Python), explicit values (C#).
  • Generics (Box) — Dart, Java11, Kotlin, TypeScript, C#. Run with 10.
  • Wasm — Switch/case (n % 3), Bit count (& >>), Do/while sum 1..N.

🤖 Generated with Claude Code

Update to ApolloVM 0.1.40 (folding in 0.1.38 and 0.1.39) and grow the
playground with examples for the new features. Every example is verified to
run: interpreted examples through ApolloVM, and the new Wasm examples executed
end-to-end in the browser via the Wasm runtime.

New examples:
- C# lambdas (0.1.38 C# lambda parsing).
- switch/case (Dart/Java11/JS/TS/C#), Kotlin `when`, Python `match` (0.1.38).
- do/while (Dart/Kotlin) and Lua `repeat ... until` (0.1.38).
- Bitwise: Dart/Java11/C# (& | ^ << >> ~), Kotlin (and/or/xor/shl/shr),
  Lua (& | ~ << >>) (0.1.38; Kotlin/Lua added 0.1.40).
- Enum runtime value access: Dart/Java11/Kotlin/Python (ordinal) and C#
  (explicit values) (0.1.38 declarations + 0.1.39 value access).
- Generics: Box<T> for Dart/Java11/Kotlin/TypeScript/C# (0.1.39).
- Wasm: switch/case, bit count and do/while, exercising the new 0.1.40 Wasm
  control-flow / bitwise support.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@gmpassos gmpassos merged commit 9ba2ec4 into main Jun 26, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant