What is Ry?
Ry is a high-performance, register-based bytecode interpreter designed for developers who value speed, safety, and excellent diagnostics. It is the successor to the Ry1 VM, rebuilt from the ground up for better performance and extensibility.
Core Features
Modern Bytecode VM
Ry compiles source code into a compact and efficient bytecode representation. This bytecode is then executed by the Ry2 Virtual Machine, avoiding the performance pitfalls of tree-walking interpreters and enabling near-native execution flow.
C++ Extensibility
For performance-critical tasks, you can write native modules in
C++ and seamlessly integrate them into your Ry scripts using the
built-in use() system. This allows you to extend the
language with powerful, low-level functionality.
Visual Diagnostics
When errors occur, Ry provides precise, easy-to-understand traceback. Its recursive engine highlights the exact location of the problem with caret-precision and can even provide fuzzy suggestions for typos.
Your First Program
Here is a simple example of a Ry program:
func greet(data name) {
out("Hello ${name}")
}
data name = input("Enter your name: ")
greet(name)