
SBCL 20: Steel Bank Common Lisp's 20th Anniversary Workshop - kristianp
http://www.sbcl.org/sbcl20/
======
reikonomusha
SBCL is an implementation of Common Lisp with a long and rich history (if you
include CMUCL as a part of that history). It’s an implementation that sees
regular contributions from random travelers, and the team of regular
developers (if you can even call them a “team”) is small and loosely knit but
surprisingly steady. There’s a trusted set of individuals with commit
privileges and many of them hack and improve SBCL just about every day. Some
of the regular devs are new with their first commits clocking in less than 6
months ago, and others are long retired, having moved on to other things
beyond SBCL.

SBCL is a piece of software that’s not inundated with opinions, politics,
drama, and other organizational issues. That is in part due to the fact that
the folks who develop it must stay grounded. ANSI Common Lisp is, well, a
standardized language and the SBCL aims to follow it to a tee.

SBCL is just a small-town coffee shop compared to the Starbucks and Dunkin
Donuts of other language implementations. As a professional and commercial
user of their software, the size of the user base and developer team used to
worry me. But 20 years of stability—compared to even the most contemporary
language ecosystems—has given me solace in my choice to use it.

~~~
pjmlp
Still I think it could be much better with the graphical tooling of the
surviving commercial Lisps.

~~~
TurboHaskal
I ended up buying LispWorks for that reason, and after putting up the work and
reading the documentation I found out I am more productive with their IDE than
with Slime.

That being said, I am so dependent on SBCL's treatment of types that I always
have a Slime session open in order to parallely develop non graphical code on
both. It is truly an amazing implementation.

Here’s to another 20 years and beyond!

~~~
_pmf_
I think a lot of people would be interested in reading more about your
workflow.

~~~
TurboHaskal
Nothing to write home about. Most of the time I'm developing inside of
LispWorks, but because I'm so used to Emacs and I'll be using org-mode and
magit anyway, having a Slime session as well to try out stuff and run tests
comes at no cost. Simply compiling something with SBCL catches some stuff, and
it's always good to make sure your code works in different implementations
during actual development and not as an afterthought. Besides, as
clunky/spartan as they are, Slime and Sly are a lot of fun so why not? Even
good old Hemlock gets some use.

When developing I always detach the UI code so it lives in its own package,
where I don't hesitate to make use of implementation goodies such as CAPI (of
course) and the mp package. The rest of the stuff aims to be portable CL and
uses the de-facto compatibility libraries.

------
nabla9
SBCL is amazing. If you walk the development history back trough forks,
organizations and names the starting point is Spice Lisp[1] in 1980, then
CMUCL in 1985 and finally SBCL in 1999.

[1]: See page 58 in Performance and evaluation of Lisp systems by Richard
Gabriel
[http://rpgpoet.com/Files/Timrep.pdf](http://rpgpoet.com/Files/Timrep.pdf)

------
codr7
I've used SBCL regularly since the initial announcement, truly an excellent
piece of software that only keeps getting better.

Being able to sit back and watch bug fixes and performance improvements
trickle in without having to deal with the usual torrent of new/deprecated
features is a nice change from other languages.

Using implementation-specific features is mostly frowned upon in the CL
community, but SBCL is so rock-solid and readily available that I feel less
and less motivated to deal with cross-implementation issues. Much like GHC in
Haskell land.

Keep it up!

------
divs1210
It is truly amazing that SBCL is so stable and fast without much (if any) Big
Co. support!

Also, Portacle [1] is a SBCL + (Emacs based) IDE distro that's super easy to
setup and use.

[1] [https://portacle.github.io](https://portacle.github.io)

~~~
anta40
Is this still actively mantained?

I still use Windows and sometimes the machines I'm working on don't have dev
environment to build SBCL.

~~~
p_l
Portacle is actively worked on, though Shinmera (author) afaik doesn't use
Windows much, though he attempts to support it equally.

------
ahefner
SBCL is great. I do think it would be a significant improvement to include a
fuller featured terminal REPL out of the box (with history, s-exp editing
keystrokes, completion), and that this would make a better first impression on
new users experimenting with the language, before they've given in and
installed SLIME - and probably beneficial for the crowd that wants to use
their favorite editor rather than Emacs+SLIME, insomuch as they only need to
solve the problem of getting definitions reloaded from the editor, without
having to also reinvent slime-repl, inspector, debugger, etc.

------
rogerb
Fantastic implementation - rock solid. It does feel like the OS X version
trails the rest of the platforms, is that true ? It hasn't mattered much for
the work I've done with it but curious.

~~~
reikonomusha
Compiling from source (sh make.sh --fancy; sh install.sh, it’s really that
simple) gives you something up to date and stable on OS X.

