A modern, minimalist programming language that has modern solution
Jurom is a clean, Java / Python inspired programming language designed for simplicity and performance. With its elegant syntax and triple execution modes, Jurom bridges the gap between rapid prototyping and high-performance compiled code.
- Object-Oriented Programming - Classes, methods, and encapsulation
- Static Typing -
num
for numbers,string
for text - Control Flow -
if/else
statements andwhile
loops - Variables & Expressions - Full arithmetic and comparison operations
- Method Chaining - Clean, readable code with dot notation
- 🔧 Transpiler Mode - Transpiles to optimized C++ code, then compiles to native executable
- 🚀 Interpreter Mode - Direct execution for rapid development and testing
- 👷 Compiler Mode - Compiles project code to highly optimized native executable
-
Clone the repository
git clone https://github.com/TheJurmikDev/Jurom.git cd jurom
-
Build the compiler
cargo build --release
-
Create new project
./jurom.exe create cd my_project
-
Project structure
my_project/ ├── src/ │ └── main.jr # Complete language implementation ├── .gitignore # Ignore file for github └── config.jurom # Config of the project
-
Edit main file
public class my_project { function main() { string greeting = "Hello, Jurom!"; println(greeting); num count = 1; while (count < 5) { println(count); count = count + 1; } } }
-
Run your project
./jurom.exe run
- Class Declarations with
public class ClassName
- Function Definitions with
function functionName()
- Variable Declarations with
num
andstring
types - Assignments with
=
operator - Arithmetic Operations (
+
,-
,*
,/
) - Comparison Operations (
==
,<
,>
,!=
,>=
,<=
,&&
,||
) - Conditional Statements (
if/else
) - Loops (
while
) - Method Calls with dot notation
- Console Output via
println()
- String Literals with double quotes
- Numeric Literals (integers)
- Binary Expressions with proper precedence
- Variable References in expressions
- Lexical Analysis – Source code → Tokens
- Parsing – Tokens → Abstract Syntax Tree (AST)
- Semantic Analysis – Checking correctness of syntax and types
- Interpretation – AST → Executing code at runtime
- Lexical Analysis - Source code → Tokens
- Parsing - Tokens → Abstract Syntax Tree (AST)
- Semantic Analysis – Checking correctness of syntax and types
- Code Generation - AST → Optimized C++ code
- Native Compilation - C++ code → Platform-specific executable
- Lexical Analysis - Source code → Tokens
- Parsing - Tokens → Abstract Syntax Tree (AST)
- Semantic Analysis – Checking correctness of syntax and types
- Code Generation - AST → Optimized Jurom code
- Native Compilation - Juom code → Platform-specific executable
- Rust-Powered - Memory-safe, fast compilation
- Recursive Descent Parser - Clean, maintainable parsing logic
- AST-Based - Structured intermediate representation
- Modular Design - Separate lexer, parser, interpreter, and code generator
Jurom's interpret mode runs code interactively via a Rust based runtime:
- Low Overhead: Efficient AST evaluation in Rust.
- Memory Efficient: Variables in
HashMap
with Rust's stack based locals. - Fast Execution: Leverages Rust's speed for responsive performance.
Jurom's transpiler mode generates optimized C++ code with:
- Zero Runtime Overhead - Direct C++ compilation
- Memory Efficiency - Stack-allocated variables
- Native Speed - Full compiler optimizations (-O3)
Jurom's compiler mode generates optimized code with:
- Extreme Optimization - Uses agresive optimization while compiling
- Static Binary Output – Produces standalone executables with no dynamic linking overhead
- Scalable Memory Model – Efficient stack allocation with support for larger code and data sections
- Arrays and Collections
- File I/O Operations
- Function Parameters
- Return Values
- String Interpolation
- Error Handling
- Module System
- Standard Library Expansion
You can find all changelogs in ChangeLogs.
This project is open source and available under the GNU License.
Made with ❤️ for developers who appreciate clean, fast languages.
Jurom - Where simplicity meets performance.