aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoel Martin <github@martintribe.org>2014-04-09 22:15:54 -0500
committerJoel Martin <github@martintribe.org>2014-04-09 22:15:54 -0500
commitedc3b0640f1b773e185550448e2086279f7b1a7f (patch)
treede0a10a34027865c2afb0a6dc51fe5b0656d814b
parent17ae845ec1dc2c703f99d3cb9f5c01e1b5c52837 (diff)
downloadmal-edc3b0640f1b773e185550448e2086279f7b1a7f.tar.gz
mal-edc3b0640f1b773e185550448e2086279f7b1a7f.zip
README: add C# info. Cleanup top Makefile.
Also, re-order impls into alphabetical order.
-rw-r--r--README.md28
-rw-r--r--cs/Makefile4
2 files changed, 24 insertions, 8 deletions
diff --git a/README.md b/README.md
index 02fdfef..2653b90 100644
--- a/README.md
+++ b/README.md
@@ -3,18 +3,19 @@
## Description
Mal is an interpreter for a subset of the Clojure programming
-language. Mal is implemetated from scratch in 10 different languages:
+language. Mal is implemetated from scratch in 11 different languages:
-* Javascript
-* Python
-* Clojure
+* Bash shell
* C
+* C#
+* Clojure
* Java
-* PHP
-* Bash shell
+* Javascript
* GNU Make
* mal itself
-* Postscript (in-progress)
+* PHP
+* Postscript
+* Python
Mal is also a learning tool. Each implentation of mal is separated
@@ -62,6 +63,19 @@ make
./stepX_YYY
```
+### C#
+
+The C# implementation of mal has been tested on Linux using the Mono
+C# compiler (mcs) and the Mono runtime (version 2.10.8.1). Both are
+required to build and run the C# implementation.
+
+```
+cd cs
+make
+mono ./stepX_YYY
+```
+
+
### Clojure
```
diff --git a/cs/Makefile b/cs/Makefile
index 3236bd6..8d05ec0 100644
--- a/cs/Makefile
+++ b/cs/Makefile
@@ -1,5 +1,7 @@
#####################
+DEBUG =
+
TESTS =
SOURCES = readline.cs types.cs reader.cs printer.cs env.cs core.cs \
@@ -15,7 +17,7 @@ SRCS = step0_repl.cs step1_read_print.cs step2_eval.cs step3_env.cs \
LIB_SRCS = $(filter-out step%,$(OTHER_SOURCES) $(SOURCES))
-FLAGS = -debug+
+FLAGS = $(if $(strip $(DEBUG)),-debug+,)
#####################