DISABLE FDs (REMOVE ME).
[jackhill/mal.git] / README.md
index 7789fe9..6d1ed38 100644 (file)
--- a/README.md
+++ b/README.md
@@ -6,7 +6,7 @@
 
 **1. Mal is a Clojure inspired Lisp interpreter**
 
-**2. Mal is implemented in 79 languages (81 different implementations and 102 runtime modes)**
+**2. Mal is implemented in 81 languages (84 different implementations and 104 runtime modes)**
 
 | Language | Creator |
 | -------- | ------- |
@@ -45,6 +45,7 @@
 | [Io](#io) | [Dov Murik](https://github.com/dubek) |
 | [Java](#java-17) | [Joel Martin](https://github.com/kanaka)  |
 | [JavaScript](#javascriptnode) ([Demo](http://kanaka.github.io/mal)) | [Joel Martin](https://github.com/kanaka) |
+| [jq](#jq) | [Ali MohammadPur](https://github.com/alimpfard) |
 | [Julia](#julia) | [Joel Martin](https://github.com/kanaka)  |
 | [Kotlin](#kotlin) | [Javier Fernandez-Ivern](https://github.com/ivern) |
 | [LiveScript](#livescript) | [Jos van Bakel](https://github.com/c0deaddict) |
@@ -55,7 +56,7 @@
 | [MATLAB](#matlab-gnu-octave-and-matlab) (GNU Octave & MATLAB) | [Joel Martin](https://github.com/kanaka) |
 | [miniMAL](#minimal) ([Repo](https://github.com/kanaka/miniMAL), [Demo](https://kanaka.github.io/miniMAL/)) | [Joel Martin](https://github.com/kanaka) |
 | [NASM](#nasm) | [Ben Dudson](https://github.com/bendudson) |
-| [Nim](#nim-0170) | [Dennis Felsing](https://github.com/def-) |
+| [Nim](#nim-104) | [Dennis Felsing](https://github.com/def-) |
 | [Object Pascal](#object-pascal) | [Joel Martin](https://github.com/kanaka)  |
 | [Objective C](#objective-c) | [Joel Martin](https://github.com/kanaka)  |
 | [OCaml](#ocaml-4010) | [Chris Houser](https://github.com/chouser) |
 | [Racket](#racket-53) | [Joel Martin](https://github.com/kanaka)  |
 | [Rexx](#rexx) | [Dov Murik](https://github.com/dubek) |
 | [Ruby](#ruby-19) | [Joel Martin](https://github.com/kanaka)  |
-| [Rust](#rust-100-nightly) | [Joel Martin](https://github.com/kanaka)  |
+| [Rust](#rust-138) | [Joel Martin](https://github.com/kanaka)  |
 | [Scala](#scala) | [Joel Martin](https://github.com/kanaka)  |
 | [Scheme (R7RS)](#scheme-r7rs) | [Vasilij Schneidermann](https://github.com/wasamasa) |
 | [Skew](#skew) | [Dov Murik](https://github.com/dubek) |
 | [Swift 2](#swift) | [Keith Rollin](https://github.com/keith-rollin) |
 | [Swift 3](#swift-3) | [Joel Martin](https://github.com/kanaka)  |
 | [Swift 4](#swift-4) | [陆遥](https://github.com/LispLY)  |
+| [Swift 5](#swift-5) | [Oleg Montak](https://github.com/MontakOleg)  |
 | [Tcl](#tcl-86) | [Dov Murik](https://github.com/dubek) |
 | [TypeScript](#typescript) | [Masahiro Wakame](https://github.com/vvakame) |
 | [Vala](#vala) | [Simon Tatham](https://github.com/sgtatham) |
@@ -91,6 +93,7 @@
 | [WebAssembly](#webassembly-wasm) (wasm) | [Joel Martin](https://github.com/kanaka) |
 | [Wren](#wren) | [Dov Murik](https://github.com/dubek) |
 | [Yorick](#yorick) | [Dov Murik](https://github.com/dubek) |
+| [Zig](#zig) | [Josh Tobin](https://github.com/rjtobin) |
 
 
 **3. Mal is a learning tool**
@@ -181,6 +184,7 @@ The following implementations are maintained as separate projects:
  * [malc](https://github.com/dubek/malc) - Mal (Make A Lisp) compiler. Compiles a Mal program to LLVM assembly language, then binary.
  * [malcc](https://github.com/seven1m/malcc) - malcc is an incremental compiler implementation for the Mal language. It uses the Tiny C Compiler as the compiler backend and has full support for the Mal language, including macros, tail-call elimination, and even run-time eval. ["I Built a Lisp Compiler"](https://mpov.timmorgan.org/i-built-a-lisp-compiler/) post about the process.
  * [frock](https://github.com/chr15m/frock) - Clojure-flavoured PHP. Uses mal/php to run programs.
+ * [flk](https://github.com/chr15m/flk) - A LISP that runs wherever Bash is
 
 
 ## Implementation Details
@@ -588,7 +592,7 @@ mvn -quiet exec:java -Dexec.mainClass=mal.stepX_YYY -Dexec.args="CMDLINE_ARGS"
 
 ```
 cd js
-npm update
+npm install
 node stepX_YYY.js
 ```
 
@@ -601,6 +605,17 @@ cd julia
 julia stepX_YYY.jl
 ```
 
+### jq
+
+Tested against version 1.6, with a lot of cheating in the IO department
+
+```
+cd jq
+STEP=stepA_YYY ./run
+    # with Debug
+DEBUG=true STEP=stepA_YYY ./run
+```
+
 ### Kotlin
 
 The Kotlin implementation of mal has been tested with Kotlin 1.0.
@@ -672,9 +687,9 @@ make
 ./stepX_YYY
 ```
 
-### Nim 0.17.0
+### Nim 1.0.4
 
-The Nim implementation of mal has been tested with Nim 0.17.0.
+The Nim implementation of mal has been tested with Nim 1.0.4.
 
 ```
 cd nim
@@ -920,7 +935,7 @@ cd ruby
 ruby stepX_YYY.rb
 ```
 
-### Rust (1.0.0 nightly)
+### Rust (1.38+)
 
 The rust implementation of mal requires the rust compiler and build
 tool (cargo) to build.
@@ -1018,6 +1033,16 @@ make
 ./stepX_YYY
 ```
 
+### Swift 5
+
+The Swift 5 implementation of mal requires the Swift 5.0 compiler. It
+has been tested with Swift 5.1.1 release.
+
+```
+cd swift5
+swift run stepX_YYY
+```
+
 ### Tcl 8.6
 
 The Tcl implementation of mal requires Tcl 8.6 to run.  For readline line
@@ -1138,6 +1163,15 @@ cd yorick
 yorick -batch ./stepX_YYY.i
 ```
 
+### Zig
+
+The Zig implementation of mal was tested on Zig 0.5.
+
+```
+cd zig
+zig build stepX_YYY
+```
+
 
 
 ## Running tests