Live data from Hacker News

Steel Bank Common Lisp 2.3.5 released

sbcl.org

11–20 of 32 posts

Re: Steel Bank Common Lisp 2.3.5 released

#11

For such a small team developing SBCL, it has been hugely stable, consistent, and advancing for years. SBCL has many ways it could improve, but it definitely exceeds most bars of quality for serious—even commercial—projects.

These kind of projects always impress me. Is it commercially backed or just a labor of love for the maintainers?

Re: Steel Bank Common Lisp 2.3.5 released

#12
post #3

I haven't looked in a while, so I'm wondering what SBCL's GC latency profile is like nowadays. IIRC, it used to be a non-incremental STW conservative GC, which is a bit unfortunate.

Follow-up question: is there a way to "freeze" the GC? As in, I've done all my allocations, now I want to run a main loop uninterrupted, and force clean up inside at_exit().

If you're not allocating, the gc won't run anyway. If you made a mistake and are allocating where you don't want to be, a gc pause might be preferable to a crash.

Re: Steel Bank Common Lisp 2.3.5 released

#13
post #3

I haven't looked in a while, so I'm wondering what SBCL's GC latency profile is like nowadays. IIRC, it used to be a non-incremental STW conservative GC, which is a bit unfortunate.

This might align with your interest, from 2023. https://applied-langua.ge/~hayley/swcl-gc.pdf

Which is itself based on Immix which was really neat:

https://www.cs.cornell.edu/courses/cs6120/2019fa/blog/immix/

Re: Steel Bank Common Lisp 2.3.5 released

#14

For such a small team developing SBCL, it has been hugely stable, consistent, and advancing for years. SBCL has many ways it could improve, but it definitely exceeds most bars of quality for serious—even commercial—projects.

These kind of projects always impress me. Is it commercially backed or just a labor of love for the maintainers?

It's a mix of volunteer work, contract work, and contributions from paid employees. Google historically has been a big contributor since they use SBCL for Google Flights.

Re: Steel Bank Common Lisp 2.3.5 released

#15
post #3

I haven't looked in a while, so I'm wondering what SBCL's GC latency profile is like nowadays. IIRC, it used to be a non-incremental STW conservative GC, which is a bit unfortunate.

I've found it to be pretty performant, but I rarely push it so who knows. SBCL is often good at avoiding allocations if you type hint things, which I'm usually doing when I need performance (messing around with sims mostly). But of course if you're doing unavoidably allocation-heavy work that doesn't do anything for you, so I'm not sure how much the gc hurts

Re: Steel Bank Common Lisp 2.3.5 released

#16

Earlier quoted context omitted.

These kind of projects always impress me. Is it commercially backed or just a labor of love for the maintainers?

It's a mix of volunteer work, contract work, and contributions from paid employees. Google historically has been a big contributor since they use SBCL for Google Flights.

Wasn't ITA Software using CCL before their acquisition by Google? I wonder why they switched to SBCL. Right now CCL seems to be rather understaffed but this wasn't the case when they switched, as far as I know.

Re: Steel Bank Common Lisp 2.3.5 released

#17
post #2

For those who didn't follow, some news from 2022: - SBCL is now callable as a shared library - SIMD support - faster (de)compression with zstd - TRACE supports tracing macro functions, compiler-macro functions, individual methods and local functions (flet and labels) - the SBCL repository reached 20,000 commits. - Prebuilt SBCL binary for Android (Termux) (unofficial) https://lisp-journey.gitlab.io/blog/these-years-i…

SIMD support is huge, and if you're willing to do a little hacking (SBCL is very easy to extend) you can even use it without the intrinsics

Re: Steel Bank Common Lisp 2.3.5 released

#18

Earlier quoted context omitted.

This might align with your interest, from 2023. https://applied-langua.ge/~hayley/swcl-gc.pdf

Which is itself based on Immix which was really neat: https://www.cs.cornell.edu/courses/cs6120/2019fa/blog/immix/

Cool!

Re: Steel Bank Common Lisp 2.3.5 released

#19
post #16

Earlier quoted context omitted.

It's a mix of volunteer work, contract work, and contributions from paid employees. Google historically has been a big contributor since they use SBCL for Google Flights.

Wasn't ITA Software using CCL before their acquisition by Google? I wonder why they switched to SBCL. Right now CCL seems to be rather understaffed but this wasn't the case when they switched, as far as I know.

Back in 2009, before the acquisition, a developer ITA software presented at the SBCL workshop (audio here: http://www.sbcl.org/sbcl10/materials/cracauer-talk.ogg), talking about the company's use of SBCL. They'd also talked about using CCL; the last I heard was that they used one on desktops, the other in prod deployments.

Re: Steel Bank Common Lisp 2.3.5 released

#20
post #9

Earlier quoted context omitted.

Follow-up question: is there a way to "freeze" the GC? As in, I've done all my allocations, now I want to run a main loop uninterrupted, and force clean up inside at_exit().

Try setting or binding SB-KERNEL:*GC-INHIBIT* to true.

That's a recipe for disaster. Never do that.
Post reply on HN