Rhema Programming Language
Write the Word. Build the World.
Rhema is a modern, easy-to-use programming language with a Christian/Biblical identity, designed for cross-platform desktop and mobile application development.
Status
This is a pre-alpha implementation. The language specification is complete, and basic compiler components (lexer, parser, AST, bytecode generator) are implemented.
Quick Start
# Clone the repository
git clone https://github.com/rhema/rhema.git
cd rhema
# Run the compiler
go run main.go --input examples/hello.rhm --output output.rbc
Language Example
covenant { Frame, Text, Button } from "rhema:ui"
temple App {
seed name = "World"
shepherd greet() {
log("Hello, " + name + "!")
amen
}
render {
Frame {
Text { "Welcome, " + name + "!" }
}
}
}
grace App
Keywords
| Rhema |
JavaScript |
Description |
covenant |
import |
Import modules |
grace |
export |
Export modules |
seed |
let |
Mutable variable |
rock |
const |
Immutable constant |
shepherd |
function |
Function |
flock |
array |
Array |
temple |
class |
Class/Component |
psalm |
/* comment */ |
Multi-line comment |
amen |
return |
Return value |
gospel |
async |
Async function |
witness |
await |
Await expression |
revive |
try |
Try block |
catch |
catch |
Catch block |
Project Structure
rhema/
├── lexer.go # Lexical analyzer
├── parser.go # Parser
├── ast.go # AST nodes
├── bytecode.go # Bytecode format
├── generator.go # Code generator
├── runtime.go # Runtime engine
├── main.go # Compiler entry point
├── rhema-cli.py # CLI tool (Python)
├── covenant.py # Package manager (Python)
├── rhema-lint.py # Linter (Python)
├── SPEC.md # Language specification
└── examples/
└── hello.rhm # Example code
Building
# Build the compiler
go build -o rhemcc main.go
# Run on a sample file
./rhemcc --input examples/hello.rhm
Roadmap
- [x] Lexer
- [x] Parser
- [x] AST
- [x] Bytecode generator
- [ ] Runtime interpreter
- [ ] Standard library (rhema:ui, rhema:state, etc.)
- [ ] CLI toolchain
- [ ] Package manager
- [ ] Hot reload dev server
License
MIT License
Created in the name of Jesus Christ