hyeong 0.1.0-beta

Hyeo-ung Programming Language Compiler
Documentation

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_string and from_string method
  • 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