Emerging
May 28, 20261
50%
Modern TypeScript Interpreter Brings Soviet-Era РАПИРА Programming Language Back to Life
An open-source TypeScript/Bun interpreter has revived РАПИРА, a Soviet educational programming language from the 1980s, making it executable in modern browsers and terminals while faithfully preserving the original 1985 Agat dialect specification.
Quick Facts
Who
G. A. Zvenigorodsky
What
TypeScript/Bun interpreter for РАПИРА programming language
When
Early 1980s (original language design)
Where
Soviet Union (original development)
- TypeScript/Bun interpreter for РАПИРА programming language
- Faithfully implements 1985 Agat dialect
- Includes lexer, parser, tree-walking evaluator
- Provides CLI with REPL support
- Browser-based web playground
A new open-source interpreter has revived РАПИРА (Rapira), an educational programming language designed in the Soviet Union during the early 1980s. The interpreter, written in TypeScript and built with Bun, faithfully recreates the language's original 1985 Agat dialect, allowing modern developers and historians to run programs on contemporary systems via browser, command line, or local development environments.
РАПИРА was developed by G. A. Zvenigorodsky as part of the Школьница (Shkolnitsa) school computing system for the Агат (Agat) Soviet microcomputer. The language featured Russian-only keywords and unique syntactic elements including three compound data types (tuples, sets, and records) and a distinctive three-arrow procedure parameter scheme. The interpreter project includes comprehensive documentation of the original 1985 specification alongside the modern implementation.
The implementation consists of multiple components: a core lexer, parser, and tree-walking evaluator; a command-line interface supporting both script execution and an interactive REPL; a web-based playground built with vanilla HTML and CodeMirror 6; and support for Чертёжник (Draftsman), the language's turtle graphics subsystem. Users can run programs directly via Node.js without installation using `npx rapira`, explore examples in a browser playground at https://begoon.github.io/rapira, or capture turtle graphics output as SVG files. The project includes 129 automated tests across 9 test files and example programs demonstrating factorial calculation, file I/O, and geometric drawing.
The interpreter renders the language accessible to modern audiences while maintaining fidelity to its original design. All code and documentation are released under the MIT license by Alexander Demin, with the complete specification and implementation notes available on GitHub, enabling both educational use and historical preservation of Soviet computing heritage.
Topics
Why This Matters
This project preserves Soviet computing heritage while demonstrating how historical programming languages can be made accessible to modern developers through contemporary tools like TypeScript and Bun. For software historians and educators, it provides a hands-on way to understand 1980s Soviet educational computing systems and their unique design philosophy. The open-source implementation with comprehensive documentation enables both nostalgic exploration and genuine historical research.
Timeline & Sources
Jan 1, 1985
WireРАПИРА Agat dialect specification finalized
May 28, 2026
WireModern TypeScript/Bun interpreter for РАПИРА released on Hacker News