mirror of
https://github.com/kanaka/mal.git
synced 2024-11-10 12:47:45 +03:00
dca6b58578
- Remove most of the step5 excludes in the Makefile except for ones which don't have TCO capability at all (or the implementation is too slow): bash, make, mal, matlab. - Make perf_EXCLUDES consistent with other excludes. - Add a print-FOO target which prints the resolved value of Makefile variable FOO. For example, `make print-IMPLS` to print the list of implementations. |
||
---|---|---|
.. | ||
tests | ||
.gitignore | ||
Core.cpp | ||
Debug.h | ||
docker.sh | ||
Dockerfile | ||
Environment.cpp | ||
Environment.h | ||
Makefile | ||
MAL.h | ||
Reader.cpp | ||
ReadLine.cpp | ||
ReadLine.h | ||
README.md | ||
RefCountedPtr.h | ||
StaticList.h | ||
step0_repl.cpp | ||
step1_read_print.cpp | ||
step2_eval.cpp | ||
step3_env.cpp | ||
step4_if_fn_do.cpp | ||
step5_tco.cpp | ||
step6_file.cpp | ||
step7_quote.cpp | ||
step8_macros.cpp | ||
step9_try.cpp | ||
stepA_mal.cpp | ||
String.cpp | ||
String.h | ||
Types.cpp | ||
Types.h | ||
Validation.cpp | ||
Validation.h |
Compilation notes
Mac OSX
This C++ implementation was developed on Mac OS X Yosemite, and uses the stock g++ compiler.
The only other requirement is GNU Readline, which I got from homebrew.
brew install readline
You may need to edit the READLINE path in the Makefile.
Ubuntu 14.10/15.04
This should compile on Ubuntu 14.10 and 15.04 with the following packages
apt-get install clang-3.5 libreadline-dev make
Docker
For everyone else, there is a Dockerfile and associated docker.sh script which can be used to make and run this implementation.
* build the docker image
./docker build
* make the MAL binaries:
./docker make
* run one of the implemenations:
./docker run ./stepA_mal
* open a shell inside the docker container:
./docker run