0.1.0 Release - Engine - Wolf sheep works
[clnl] / README.md
1 # clnl
2
3 This is an experiment at creating an alternate implementation of NetLogo in Common Lisp.
4
5 See the [wiki](https://github.com/frankduncan/clnl/wiki) for more information.
6
7 # Using standalone executables
8
9 Find the latest version, [0.1.0](https://github.com/frankduncan/clnl/releases/tag/v0.1.0) on the [releases page](https://github.com/frankduncan/clnl/releases):
10 * [linux](https://github.com/frankduncan/clnl/releases/download/v0.1.0/clnl)
11 * [windows](https://github.com/frankduncan/clnl/releases/download/v0.1.0/clnl.exe)
12 * [mac](https://github.com/frankduncan/clnl/releases/download/v0.1.0/CLNL.dmg)
13
14 # Running from source
15
16 If you'd like to run it from source, you're going to need a few things:
17
18 * A copy of the clnl source (either from the [releases page](https://github.com/frankduncan/clnl/releases), version [0.1.0](https://github.com/frankduncan/clnl/releases/download/v0.1.0/clnl_0.1.0.tar.gz) or via cloning)
19 * An implementation of sbcl with threads enabled
20 * The following common lisp libraries (included in [deps/common-lisp](deps/common-lisp) folder)
21   * alexandria
22   * babel
23   * cffi
24   * cl-charms
25   * cl-opengl
26   * cl-ppcre
27   * ironclad
28   * mt19937
29   * nibbles
30   * trivial-features
31   * strictmath
32   * ieee-floats
33
34 [bin/nl](bin/nl) and [bin/run.lisp](bin/run.lisp) have been added for convenience to run the netlogo instance.  It boots up the ncurses command line with an opengl view.  Not very many commands are implemented, but it should alert you to that.  A good test is
35
36 ```
37 crt 10
38 ask turtles [ fd 1 ]
39 show random 5
40 ask turtles [ fd 5 ]
41 ```
42
43 ## Running on OSX
44
45 In order to run on OSX, you may have to build your own sbcl instance with threads enabled.  See [bin/buildosxexec.sh](bin/buildosxexec.sh) for how it's done when releasing/testing.
46
47 ## Running on Windows
48
49 In order to run on Windows, you will need to install a copy of 32bit sbcl with threads enabled, as well as putting a copy of freeglut and pdcurses in that directory.  See [bin/buildwindowsexec.sh](bin/buildwindowsexec.sh) for how it's done when releasing/testing.
50
51 # Running in a common lisp instance
52
53 If you'd like to run using your own sbcl instance, you can attach the clnl.asd file wherever you link asd files, and then use:
54
55 ```lisp
56 (asdf:load-system :clnl)
57 (clnl:run)
58 ```