Please read regarding installing Clasp on Sept 25, 2014
Clasp is a Common Lisp implementation that interoperates with C++ and uses LLVM for just-in-time (JIT) compilation to native code.
See http://drmeister.wordpress.com/2014/09/18/announcing-clasp/ for the announcement.
Clasp is not yet a full ANSI compliant Common Lisp - if you find differences between Clasp and the Common Lisp standard they are considered bugs in Clasp and please feel free to report them.
Libraries that clasp depends on can be obtained using the repository: externals-clasp
https://github.com/drmeister/externals-clasp.git
You must build externals-clasp prior to building Clasp
BUILDING CLASP
Clasp has been compiled on OS X 10.9.5 using Xcode 6.0.1
Clasp has been compiled on recent (post 2013) versions of Ubuntu Linux
To build Clasp from within the top level directory do the following.
- Strongly consider downloading/building the externals-clasp repository
- it contains all of the external libraries that LLVM depends on.
-
Copy local.config.darwin or local.config.linux to local.config
-
Edit local.config and configure it for your system
As in externals-clasp the following configuration variables are important.
Variable | Description |
---|---|
CLASP_BUILD_TARGET_DIR | This defines where make will put the Clasp application |
I use $HOME/local/clasp | |
EXTERNALS_BUILD_TARGET_DIR | This defines where Clasp build will find the externals-clasp libraries |
I use $HOME/local/externals-clasp | |
TARGET_OS | Currently either linux or darwin |
PJOBS | The number of processors you have available to build with |
-
Type: make to build mps and boehm versions of Clasp
or type: make-boehm to make the boehm version of Clasp
or type: make-mps to make the MPS version of Clasp -
Install the directory in $CLASP_BUILD_TARGET_DIR/MacOS or $CLASP_BUILD_TARGET_DIR/bin (from local.config) in your path
then type: clasp_mps_o to start the Lisp REPL of the MPS version of Clasp
or type: clasp_boehm_o to start the Lisp REPL of the Boehm version of Clasp -
Type: (print "Hello world") in the REPL and away you go (more documentation to follow)
If you want to install the libraries separately they are:
Contact me for more info - I can add more details to what is below.
Boost build v2
boost libraries ver 1.55
Boehm 7.2
LLVM/clang 3.5
gmp-5.0.5
expat-2.0.1
zlib-1.2.8
readline-6.2