Back to portfolio

Featured project

jpinky

A small interpreted language implemented in Java, with a lexer, parser, AST model, and tree-walking interpreter. The current direction is a browser-hosted playground backed by the same core runtime.

2026 Active

Problem

Build a compact language implementation that stays readable, testable, and ready for a browser-facing demo without discarding the current Java core.

Stack

JavaGradleAstroReact

Implemented

  • Lexer and parser for a compact custom language syntax.
  • AST model and interpreter for expressions, control flow, functions, and scoped state.
  • Portfolio page architecture that can evolve into a live playground once the browser runner is wired in.

Next steps

  • Extract a browser-safe runSource API from the CLI entrypoint.
  • Compile the Java runtime for client-side execution with a browser-targeted toolchain.
  • Embed an editor and output panel directly on the project page.

Browser runner

Live demo

The sample program runs in the browser through TeaVM.

Output
Loading runtime...
Tokens
No tokens yet.
AST
No AST yet.