Chapter 2.16 --- Extra Credit
Foreign Libraries in Lisp
"I was indeed a total stranger in an utterly strange and confusing land... but I do not think, in retrospect, that I would have made my condition worse had I simply blurted out my predicament. I would not have been believed."
Like many other languages these days, Lisp allows you to call foreign code libraries, compiled or otherwise, as if they were native code. Lisp was one of the first languages to include this feature, and the term "Foreign Function Interface" was introduced specifically for this functionality in Common Lisp.
We have already seen some foreign libraries in action---such as
lispbuilder-sdl in Chapter 2.12, and a few database libraries in Chapter 2.4. In this chapter we will be exploring a variety of foreign function interface libraries available in Quicklisp, so that you can get a feel for working with Lisp in a diverse ecosystem of code from many different sources---even Python libraries!
CL-COLLIDER: an interface to SuperCollider
CL-COLLIDER: Live-Hacking Audio
CL-COLLIDER: Audio-Generating Macros
CL+SSL: an interface to OpenSSL
GSLL: an interface to the GNU Scientific Library
Burgled-Batteries: a Python--Lisp Bridge
Burgled-Batteries and SciPy
Burgled-Batteries and Python GUI Libraries
Burgled-Batteries: Python In Lisp