zaoqi-unsafe / low-level-lush

(LLL) : Low-Level-Lush with Lisp is a combination of Lush2.0.1 and LLVM2.8 to bring out the best in both.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

(LLL) : Low-Level-Lush.  Low-Level-Lush is a combination of Lush2.0.1 and LLVM2.8, in order to bring out the best in both.

Lush2.0.1 offers excellent programming environment for numerics, machine learning, plotting, GUI, an excellent class system and lovely interface to C code and producing C code for deployment.

Unfortunately Lush2.0.1 lacks the ability to construct closures. 

LLVM2.8 with the Clang C++ compiler offers the ability to codgen C/C++ fragments and execute them in a JIT interpretted environment.

Together they offer a great interactive and production environment.  Since they have compatible open source licenses, this works.

The Gambit-C system from Marc Feeley at Montreal offers full closures and C codegen, plus SIX for infix syntax, syntax rules, and serializable closures.

For garbage collection we use Ralf's libcmm augmented by reference linking. Also pool based malloc replacement umem library and/or google's TCMalloc (http://goog-perftools.sourceforge.net/doc/tcmalloc.html).

INSTALL, example:

mkdir install
cd llvm-2.8
./configure --prefix=`cd ..; pwd`/install --enable-optimized --disable-expensive-checks --enable-jit --enable-pic --enable-shared --enable-targets=x86_64 REQUIRES_RTTI=1
make install

cd lush2.0.1
./configure --prefix=`cd ..; pwd`/install
make install

About

(LLL) : Low-Level-Lush with Lisp is a combination of Lush2.0.1 and LLVM2.8 to bring out the best in both.


Languages

Language:C++ 38.7%Language:Common Lisp 24.5%Language:LLVM 8.5%Language:C 8.0%Language:Scheme 4.5%Language:HTML 4.3%Language:Pascal 2.3%Language:Assembly 2.0%Language:Objective-C 1.6%Language:Shell 1.2%Language:Perl 1.1%Language:Makefile 0.9%Language:CartoCSS 0.5%Language:Python 0.4%Language:OCaml 0.3%Language:TeX 0.2%Language:M4 0.2%Language:CMake 0.1%Language:Ada 0.1%Language:Roff 0.1%Language:Objective-C++ 0.1%Language:Emacs Lisp 0.1%Language:CSS 0.1%Language:Logos 0.0%Language:Fortran 0.0%Language:Batchfile 0.0%Language:XSLT 0.0%Language:JavaScript 0.0%Language:IDL 0.0%Language:Vim Script 0.0%Language:GDB 0.0%Language:Java 0.0%Language:NSIS 0.0%Language:MATLAB 0.0%Language:Gnuplot 0.0%Language:SourcePawn 0.0%Language:Standard ML 0.0%Language:Mercury 0.0%Language:Perl 6 0.0%Language:Mathematica 0.0%Language:Mask 0.0%Language:Limbo 0.0%