GSoC/GCI Archive
Google Summer of Code 2014

Steel Bank Common Lisp

License: MIT license

Web Page:

Mailing List:

Steel Bank Common Lisp (SBCL) is a high performance Common Lisp compiler. It is open source / free software, with a permissive license. In addition to the compiler and runtime system for ANSI Common Lisp, it provides an interactive environment including a debugger, a statistical profiler, a code coverage tool, and many other extensions.


  • Improving Unicode support in SBCL Currently, SBCL does not have very good support for working with Unicode text. In order to improve SBCL's Unicode support, I propose to create a 'sb-unicode' package that will contain implementations of the algorithms used in the Unicode standard and provide other facilities for working with Unicode text. I also propose to implement a "Unicode string" type, which will allow functions in the 'cl' package to operate correctly and transparently on Unicode data.
  • Speeding up constant division in SBCL Integer division is known to be a lot slower than other arithmetic operations like multiplication or addition in computers. Because of this, many compilers try to transform divisions into faster operations whenever possible. In particular, integer division by a constant value can be reduced to faster sequence of operations like shifting and multiplication. The aim of this project is to improve this in SBCL.