Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> what implementation really does that with SAFETY being 3?

LispWorks:

    CL-USER 1 > (declaim (optimize safety))
    NIL
    
    CL-USER 2 > (defun f (x) (declare (fixnum x)) x)
    F
    
    CL-USER 3 > (f "foo")
    "foo"


It needs (optimize safety debug) and the function needs to be compiled (interpreted code doesn't perform any optimizations based on the types).


Sure, but the point is that that exact same code will throw a type error in SBCL. It at least complicates what you need to do before you can say "what implementation doesn't behave like that?".


But what is the point, really? SBCL will disable type checks with safety=0, LW will enable with safety=3, debug=3. Is the point "read your documentation before relying on things"?

Or is the OP's point that SBCL shouldn't exist because it's "poisoning" and "a bad thing"?

That's the problem with such FUD, can't ignore it or somebody might actually believe it, can't just say "nonsense" since that's not convincing.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: