The steps regarding the installation and configuration of the software components
building the LISP development environment under Ubuntu are detailed below.
Installation and configuration of software under Ubuntu requires administration
CLISP should be installed onto a Ubuntu Linux PC from the associated Software
Center. CLISP is a portable ANSI Common Lisp implementation and development
environment, including an Interpreter, Compiler, Debugger, CLOS, MOP, FFI,
Unicode, sockets, CLX, the System Definition Facility ASDF, and much more.
Following the installation of the current version, i.e for the time being version 2.49,
CLISP can be started by invoking clisp from within the Ubuntu XTerm application.
The window shown by the thumbnail GNU CLISP will appear on the screen, and the
Lisp function (list-all-packages) will show the packages provided with clisp.
Perform the installation of the current version of Emacs, i.e the GNU Emacs binary
implementation for Ubuntu provided in the associated Software Center. Following
the installation, you can start Emacs either from within the Ubuntu application
XTerm, or by clicking on the Run Command of the Ubuntu's Application Launcher
Menu and call Emacs. You will get the Emacs shell shown by the thumbnail GNU
Emacs, including documentation to start using Emacs.
GNU Emacs is a powerful text editor. Combined with SLIME, the Superior Lisp
Interaction Mode for Emacs, Emacs provides under Ubuntu an excellent platform for
unifying LISP development. Everything you need to start using Common LISP
Libraries in Emacs is to install SLIME from the associated Ubuntu Software Center.
Everything is handled by the installer of the Ubuntu Software Center. Thus, no
additional configuration is required.
Following the installation, you can use the command M-x slime to load SLIME into
your Emacs session and start Coding, as shown in the thumbnail GNU Emacs-clisp-
maxima-C++. As you can see, SLIME under Emacs runs using CLISP in a buffer
called *slime-repl clisp*. This is the buffer where LISP definitions added in other
buffers, e.g in the buffer called foo.lisp can be incrementally compiled, loaded into
LISP and run, upon defined.
Beyond these two buffers, this Emacs session includes another two buffers, which
in the following will be discussed in more details.
Perform the installation of the current version of Maxima, i.e the Maxima binary
implementation for Ubuntu provided in the associated Software Center. No
additional configuration is required. Following the installation, you can use the
command M-x maxima to load Maxima into your Emacs session and run Maxima
alongside with CLISP under Emacs, for doing numeric and symbolic calculations.
See buffer *maxima* in thumbnail GNU Emacs-clisp-maxima-C++. Provided with
Maxima is Gnuplot, which allows you to generate 2- and 3-dimensional plots, as
You can use Maxima together with Gnuplot also standalone. That is, you can start
Maxima by clicking on the Run Command of the Ubuntu's Application Launcher
Function 2 Gnuplot, respectively.
Beyond Maxima and SLIME, in Ubuntu you can benefit also from the integrated C
Compiler gcc. Install also the C++ Compiler g++ from within the Ubuntu Software
Center, together with the associated documentation and multilib files, in order to be
able to compile C and C++ programs under Emacs. Use either the "Emacs Tools >
Compile", which results in a make -k call, or the "Emacs Tools > Shell Command",
which allows you to launch the appropriate Compiler gcc or g++, respectively.
As an example, see buffers primefactors.cpp in GNU Emacs -clisp-maxima-C++
and *compilation* in GNU Emacs-clisp-maxima-C++ compilation. Alternatively, you
may compile and run C or C++ programs also from within XTerm using either gcc or
g++, as shown in thumbnail g++ and gcc examples for primefactors.cpp and for
the program quadratic.c, which uses the option -lm in order to link the mathematics
Furthermore, using the FFI integrated with CLISP, you can perform in Emacs also
Foreign Function Calls from within CLISP to C or C++. This, however, yields well
beyond the scope of this introductory description.
OpenSSL is a full-featured and Open Source cryptography toolkit implementing the
Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) network
protocols as well as a full-strength general purpose cryptography library. OpenSSL
for Ubuntu is available from the associated Software Center.
Among a lot more OpenSSL is used for the creation and management of private
keys, public keys, time stamps and parameters allowing cryptographic operations
using the aforementioned protocols. For details see the OpenSSL homepage.
Besides CLISP, accessing a LISP development environment on a remote host from
within your local Ubuntu PC may become necessary. Thus, e.g CLISP running on a
Mac computer or on a Nokia N900 tablet. This may be achieved from within XTerm,
using the secure shell SSH. The following two groups of thumbnails show, each in a
"three-step approach", examples of accessing a configured Emacs environment on
a Mac mini host server and on a Nokia tablet N900, respectively:
accessing the remote host server via SSH
accessing Emacs on the remote host server
accessing SLIME REPL CLISP on host server
accessing the remote host N900 via SSH
accessing Emacs on the remote host N900
accessing SLIME REPL CLISP on host N900