I built my own JVM language. Here's why and how
summary
Built a JVM language called MOBA that compiles human‑sentence syntax into a single class with a public static main, using ANTLR parse tree to parse sentences and ASM bytecode generator to emit class files. Language supports variables, conditionals, two loop styles, program arguments, and three types (integer, decimal/double, string) with runtime coercion so arithmetic and concatenation work. ASM surprises: everything compiles into method frames so types, operand stack slots and label‑based jumps matter, and ASM can compute frames and max stack for you.
AI-written summary · about
chapters (10)
- 0:00Motivation and project goals
- 2:20Language design and syntax
- 6:40Grammar definition with Antlr
- 13:34Implementing visitor patterns
- 17:36Bytecode generation with ASM
- 21:52JVM internals and stack state
- 27:29Advanced compilation logic
- 34:59Error handling and testing
- 37:52Live demonstrations
- 40:01Conclusion and Q&A
related talks
01h 00mHow to create a new JVM language
37mAssembling
01h 19mTowards the tower of Babel: a Polyglot Language VM in Java
45mMaking Java more dynamic
15mThe Jai Programming Language and What Can We Learn From It
01h 01mPolyglot Programming in the JVM
44mBuilding Languages Using Kotlin
53mWell there's your problem! Your engine's missing! A look under Java's hood
