Lush is designed to be used in situations where one would want to combine the flexibility of a high-level, weakly-typed interpreted language, with the efficiency of a strongly-typed, natively-compiled language, and with the easy integration of code written in C, C++, or other languages.
This language can be used for researches in signal and image processing, machine learning, computer vision, bio-informatics, statistics, simulation, optimization, data mining or AI.
It runs on GNU/Linux, Solaris, Irix, and Windows under Cygwin.
Lush can be used advantageously for projects where one would otherwise use a combination of an interpreted language like Matlab, Python, Perl, S+ or BASIC, and a compiled language like C.
Here are some key features of "Lush":
· A very clean, simple, and easy to learn Lisp-like syntax.
· A compiler that produces very efficient C code and relies on the C compiler to produce efficient native code (no inefficient bytecode or virtual machine).
· An easy way to interface C functions and libraries, and a powerful dynamic linker/loader for object files or libraries (.o, .a and .so files) written in other compiled languages.
· The ability to freely mix Lisp and C in a single function.
· A powerful set of vector/matrix/tensor operations.
· A huge library of over 10,000 numerical routines, including full interfaces to GSL, LAPACK, and BLAS.
· A library of image and signal processing routines.
· An extensive set of graphic routines, including an object-oriented GUI toolkit, an interface to OpenGL/GLU/GLUT, and the OpenInventor scene rendering engine.
· An interface to the Simple Directmedia Layer (SDL) multimedia library, including a sprite class with pixel-accurate collision detection (perfect for 2D games).
· Sound and video grabbing (using ALSA and Video4Linux).
· Several libraries for machine learning, neural net, statistical estimation, Hidden Markov Models (gblearn2, Torch, HTK, SVM).
· Libraries for computer vision (OpenCV, Intel's open source Vision Library), and 3D scene rendering (OpenInventor).
· Bindings to the JavaVM API and to the Python C API.
What's New in This Release: [ read full changelog ]
· This release fixes build problems on Solaris and Mac OS X 10.5 as well as a few minor bugs.