Hyeo-ung Programming Language compiler written in rust. (Developing)
Goal
- Big Number
- Interpreter
$ hyeong
- Code runner
$ hyeong run FILE
- Compiler
$ hyeong build FILE --flags...
- Optimization
- Debugger
$ hyeong debug FILE --flag...
- String to Hyeo-ung Code Generator
$ hyeong string "Hello, World!"
- Prove whether it is Turing Complete
- No unsafe rust code
- Documented code
- Language tutorial (English)
- Examples
Implementation
Complier: | Interpreter:
|
Hyeo-ung code | Hyeo-ung code
|
| | |
V | V
|
Rust code | Execute by line
|
| |
V |
|
Binary Program |
Implemented
- Big Number:
- Arithmetic operators,
to_stringandfrom_stringmethod
- Arithmetic operators,
- Compiler:
- parser: O(n) algorithm iterates whole code exactly twice
- Code Runner:
- optimized & unoptimized code runner
- Interpreter:
- interactive code runner
- Optimizer:
- level 1 optimize
- level 2 optimize
- Debugger:
- line by line (with going back feature)
- Compiler:
- supports optimize
- Examples:
Hello, world!,a + b,a * b
Feature
- Compile hyeo-ung code
$ hyeong build FILE -O2 -Wall
- Parse hyeo-ung code
$ hyeong check FILE
- Debug hyeo-ung code
$ hyeong debug FILE --from 12
- Run directly without making binary file
$ hyeong run FILE -O2 -Wall
- Update this tool
$ hyeong update
- Interpreter
$ hyeong
How to install
(will be published when stable version comes out)
curl "https://raw.githubusercontent.com/buttercrab/hyeo-ung-lang/master/install_hyeong.sh" | /bin/bash