Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/porges/bege
A toy optimizing compiler for Befunge → .NET (I think it is currently broken?)
https://github.com/porges/bege
befunge compiler dotnet fsharp msil
Last synced: 16 days ago
JSON representation
A toy optimizing compiler for Befunge → .NET (I think it is currently broken?)
- Host: GitHub
- URL: https://github.com/porges/bege
- Owner: Porges
- Created: 2017-04-03T02:52:04.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2022-05-02T06:52:22.000Z (over 2 years ago)
- Last Synced: 2024-10-20T12:37:24.656Z (2 months ago)
- Topics: befunge, compiler, dotnet, fsharp, msil
- Language: F#
- Homepage:
- Size: 110 KB
- Stars: 2
- Watchers: 2
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: ReadMe.md
Awesome Lists containing this project
README
# Bege – takes the ‘fun’ out of ‘Befunge’
(The ‘fun’ is the `p` command.)
## Command support
All of Befunge-93 is supported except `p`.
| Command | Supported |
|---------|-----------|
| down `v` | ○ |
| up `^` | ○ |
| right `>` | ○ |
| left `<` | ○ |
| high `h` | × (tre/98) |
| low `l` | × (tre/98) |
| turn left `[` | × (98) |
| turn right `]` | × (98) |
| reflect `r` | ○ (98) |
| push decimal `0`–`9` | ○ |
| push hex `a`–`f` | ○ (98) |
| pop `$` | ○ |
| nop ` ` | ○ |
| skip `#` | ○ |
| exit `@` | ○ |
| duplicate `:` | ○ |
| swap `\\` | ○ |
| clear `n` | ○ (98) |
| input character `~` | ○ |
| output character `,` | ○ |
| input number `&` | ○ |
| output number `.` | ○ |
| not `!` | ○ |
| add `+` | ○ |
| multiply `*` | ○ |
| divide `/` | ○ |
| modulo `%` | ○ |
| subtract `-` | ○ |
| greater`
| ○ |
| compare `w` | × (98) |
| branch l/r `_` | ○ |
| branch u/d|
| ○ |
| branch h/d `m` | × (tre/98) |
| random `?` | ○ |
| get `g` | ○ |
| put `p` | × |
| store `s` | × (98) |
| input file `i` | × (98) |
| output file `o` | × (98) |
| string mode `"` | ○ |
| comment mode `;` | ○ (98) |
| eval `=` | × (98) |
| jump `j` | × (98) |
| goto `x` | × (98) |
| iterate `k` | × (98) |
| split `t` | × (98) |
| under `u` | × (98) |
| sysinfo `y` | × (98) |
| begin block `{` | × (98) |
| end block `}` | × (98) |