Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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とアセンブラとコンパイラ
- Host: GitHub
- URL: https://github.com/sonota88/vm2gol-v2
- Owner: sonota88
- License: mit
- Created: 2019-05-03T01:06:26.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2024-04-21T06:41:56.000Z (8 months ago)
- Last Synced: 2024-04-21T07:29:12.145Z (8 months ago)
- Topics: compiler, ruby
- Language: Ruby
- Homepage:
- Size: 1.27 MB
- Stars: 15
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
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/155425vm2gol 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)