Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sonota88/vm2gol-v2

Small virtual machine, assembler and compiler written in pure Ruby / Rubyで書いたオレオレVMとアセンブラとコンパイラ
https://github.com/sonota88/vm2gol-v2

compiler ruby

Last synced: 1 day ago
JSON representation

Small virtual machine, assembler and compiler written in pure Ruby / Rubyで書いたオレオレVMとアセンブラとコンパイラ

Awesome Lists containing this project

README

        

```
$ LANG=C wc -l mrcl_*.rb common.rb
66 mrcl_asm.rb
380 mrcl_codegen.rb
57 mrcl_lexer.rb
399 mrcl_parser.rb
470 mrcl_vm.rb
52 common.rb
1424 total
```

![image](https://raw.githubusercontent.com/sonota88/vm2gol-v2/images/images/run_gol_step62.gif)

![image](https://raw.githubusercontent.com/sonota88/vm2gol-v2/images/images/run_gol_step62_step.gif)

Rubyで素朴な自作言語のコンパイラを作った
https://memo88.hatenablog.com/entry/2020/05/04/155425

vm2gol v2 製作メモ
https://memo88.hatenablog.com/entry/2019/05/04/234516

```sh
# Run tests / テストの実行
rake test

# Run game of life / ライフゲームの実行
./run.sh gol.mrcl
```

# Ports

These are ports of the compiler part only, with some exceptions.

- [Scala](https://github.com/sonota88/mini-ruccola-scala)
- [R](https://github.com/sonota88/mini-ruccola-r)
- [Elixir](https://github.com/sonota88/mini-ruccola-elixir)
- [C#](https://github.com/sonota88/mini-ruccola-csharp)
- [V](https://github.com/sonota88/mini-ruccola-v)
- [Forth (GForth)](https://github.com/sonota88/mini-ruccola-forth)
- [Tcl](https://github.com/sonota88/vm2gol-v2-tcl)
- [Shell Script (Bash Script)](https://github.com/sonota88/vm2gol-v2-bash)
- [なでしこ3](https://github.com/sonota88/vm2gol-v2-nadesiko3)
- [Haskell](https://github.com/sonota88/vm2gol-v2-haskell)
- [OCaml](https://github.com/sonota88/vm2gol-v2-ocaml)
- [Pascal](https://github.com/sonota88/vm2gol-v2-pascal)
- [Julia](https://github.com/sonota88/vm2gol-v2-julia)
- [Rust](https://github.com/sonota88/vm2gol-v2-rust)
- [Crystal](https://github.com/sonota88/vm2gol-v2-crystal)
- [Ruccola (self-hosting)](https://github.com/sonota88/ruccola)
- [Kotlin](https://github.com/sonota88/vm2gol-v2-kotlin)
- [Zig](https://github.com/sonota88/vm2gol-v2-zig)
- [LibreOffice Basic](https://github.com/sonota88/vm2gol-v2-libreoffice-basic)
- [Go](https://github.com/sonota88/vm2gol-v2-go)
- [PHP](https://github.com/sonota88/vm2gol-v2-php)
- [C♭](https://github.com/sonota88/vm2gol-v2-cflat)
- [Perl](https://github.com/sonota88/vm2gol-v2-perl)
- [C](https://github.com/sonota88/vm2gol-v2-c)
- [Java](https://github.com/sonota88/vm2gol-v2-java)
- [Dart](https://github.com/sonota88/vm2gol-v2-dart)
- [Python](https://github.com/sonota88/vm2gol-v2-python)
- [TypeScript (Deno)](https://github.com/sonota88/vm2gol-v2-typescript)