Let's talk about transpilers
summary
Automatic translation framework that parses legacy code into an AST, builds a refinable intermediate IR, then emits target-language code using a printer; uses the open-source starlazo libraries (Kotlin, TypeScript, Python, C#) and demonstrates an RPG→Java demo that runs but makes deliberate semantic choices (e.g. fixed 8‑char RPG strings become unconstrained Java strings, RPG numeric fields become Java long). The team experiments with transformation-by-example to map idioms, warns that semantics testing needs heavy client involvement, and that tailored transpilers improve quality at the cost of reuse.
AI-written summary · about
chapters (10)
- 0:00Legacy code value
- 3:18Migrating to new languages
- 6:31Rewriting vs transpilation
- 11:27Transpiler demo
- 16:26Code translation challenges
- 20:00How transpilers work
- 27:09Transformation and ASTs
- 33:16Generating target code
- 35:03Building transpilers: resources
- 39:16Q&A: Testing semantics
related talks
30mLet's talk about transpilers!
34mYour Program as a Transpiler: Applying Compiler Design to Everyday Programming
40mYour Program as a Transpiler: Applying Compiler Design to Everyday Programming
34mThe boundless possibilities of transpilation
28mTruffle
59mPrinciples of Programming Language Translators
39mYour Program as a Transpiler
38mSource code manipulation (...)
