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

You hit the nail on the head. And I like the comparison with alien technology: in some ways it feels centuries ahead than our mainstream languages, but in other it feels they have never developed stuff we take for granted in 2024, like first-class hashmaps, Unicode and decent date/time functions.


SBCL has excellent Unicode support, for one, and hash tables are first class objects in all CL implementations. Won't disagree about date and times.


By 'first-class hashmaps' I believe SPH means a type of quasiquoted syntax for hash table initialisation. Something like...

  (let ((my-map `#M((foo ,foo) (bar ,bar) (baz ,baz))))
    (gethash 'foo my-map))
EDIT: almost forgot, thank you for pointing out SBCL's support for Unicode, reading its documentation I found a couple of functions I was in need of.


Thanks. I may have taken "first-class" too literally. :)

Constructor syntax is nice-to-have, but I don't think the lack of it is evidence of alien technology. Java has the same problem, for example, and Java is about as non-alien as you can get. Overall, hash maps are quite well done in CL, and good surface syntax is easily found in popular libraries, if that's a pain-point (serapeum, etc.).

I'm happy to help you find sb-unicode. :) I rarely use CL these days, but when I do, I'm so grateful to the SBCL team for their amazing and ongoing work.




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

Search: