-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
0cea77f
commit 9d5c6fa
Showing
6 changed files
with
34 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,22 @@ | ||
# monyet | ||
# Monyet | ||
|
||
[Crystal](https://crystal-lang.org/reference/1.2/index.html) implementation of the [Monkey Language](https://monkeylang.org/) | ||
|
||
Monyet has a sibling implementation for Kotlin: [monkey.kt](https://github.com/MarioAriasC/monkey.kt) | ||
|
||
## Status | ||
|
||
The two books ([Writing An Interpreter In Go](https://interpreterbook.com/) | ||
and [Writing A Compiler in Go](https://compilerbook.com/)) are implemented. | ||
|
||
## Commands | ||
|
||
Before running the command you must have crystal and shards installed on your machine | ||
|
||
| Script | Description | | ||
|-----------------|--------------------------------------------------------------------------------------------------------------------| | ||
| `tests.sh` | Run all the tests | | ||
| `checks.sh` | Run format tool and ameba checks | | ||
| `build.sh` | Release build | | ||
| `benchmarks.sh` | Run the classic monkey benchmark (fibonacci(35)), requires one command (`--eval`,`--eval-fast`,`--vm`,`--vm-fast`) | | ||
| `repl.sh` | Run the Monyet REPL | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
#!/usr/bin/env bash | ||
./bin/monyet "$1" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
#!/usr/bin/env bash | ||
shards build --release |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
#!/usr/bin/env bash | ||
crystal tool format | ||
shards install | ||
crystal bin/ameba.cr |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
#!/usr/bin/env bash | ||
./bin/monyet --repl |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
#!/usr/bin/env bash | ||
crystal spec --verbose |