3 ms·
Unleash the smug Lisp weenies! After all, Perl's stability is minimal compared with Common Lisp's.
by madhadron 14y ago
Unleash the smug Lisp weenies! After all, Perl's stability is minimal compared with Common Lisp's.
- jrockway 14y agoAh yes, SBCL, the runtime that manages memory with a signal handler on SEGV. Stable!
- housel 14y agoThat's a feature, not a bug. Write-protecting memory areas using mprotect() and the like, and handling the resulting SIGSEGV, is a popular technique for implementing a write barrier needed for generational garbage collection.
- chromatic 14y agoI've seen it used before to good effect, but one concern is that it's really easy to write flaky and unsafe signal handlers. Getting that right has never seemed easy to me.
- jasomill 14y agoIt's very easy to write flaky and unsafe memory management code in general, yet memory management is used with good results in nearly every production system. And there's nothing wrong with using "tricky" OS and hardware services to implement language runtimes and core libraries --- that's what they're there for.
- pcwalton 14y agoJava does that, for null checks.
- jasomill 14y agoThe CLR uses a similar technique on Windows[1]. [1] http://blogs.msdn.com/b/oldnewthing/archive/2007/08/16/4407029.aspx http://blogs.msdn.com/b/oldnewthing/archive/2007/08/16/44070...