Began implementing the funge field
This commit is contained in:
parent
4a296c28ee
commit
9a5ff5f233
6 changed files with 135 additions and 0 deletions
64
README.md
Normal file
64
README.md
Normal file
|
@ -0,0 +1,64 @@
|
|||
# NimFunge98 : a Funge-98 interpreter written in nim
|
||||
|
||||
This repository contains code for a nim program that can interpret a valid [Funge-98](https://github.com/catseye/Funge-98/blob/master/doc/funge98.markdown) program. It will soon pass the [mycology test suite](https://github.com/Deewiant/Mycology).
|
||||
|
||||
Current limitations are :
|
||||
- it is not finished!
|
||||
- currently does not implement any fingerprints
|
||||
- does not implement concurrent execution with the `t` command
|
||||
- does not implement file I/O with the `i` and `o` commands
|
||||
- does not implement system execution with the `=` command
|
||||
|
||||
## Contents
|
||||
|
||||
- [Dependencies](#dependencies)
|
||||
- [Quick install](#quick-install)
|
||||
- [Usage](#usage)
|
||||
- [Building](#building)
|
||||
|
||||
## Dependencies
|
||||
|
||||
nim is required. Only nim version >= 1.4.8 on linux amd64 (Gentoo) is being regularly tested.
|
||||
|
||||
## Quick Install
|
||||
|
||||
To install, clone this repository then run :
|
||||
```
|
||||
nimble install
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Launching the interpreter is as simple as :
|
||||
```
|
||||
nimfunge98 -f something.b98
|
||||
```
|
||||
|
||||
The interpreter will then load and execute the specified Funge-98 program until the program normally terminates or is interrupted or killed.
|
||||
|
||||
## Building
|
||||
|
||||
For a debug build, use :
|
||||
```
|
||||
nimble build
|
||||
```
|
||||
|
||||
For a release build, use :
|
||||
```
|
||||
nimble build -d:release
|
||||
```
|
||||
|
||||
To run unit tests, use :
|
||||
```
|
||||
nimble tests
|
||||
```
|
||||
|
||||
To run integration tests, use :
|
||||
```
|
||||
nimble integration
|
||||
```
|
||||
|
||||
To calculate the code coverage of tests, use :
|
||||
```
|
||||
nimble coverage
|
||||
```
|
Reference in a new issue