5 ms·
> Associative data structures (maps / dicts) are super first-class in Clojure “First-class”, you keep using that word. I do not think it means what you think i
by catnaroek 9y ago
> Associative data structures (maps / dicts) are super first-class in Clojure
“First-class”, you keep using that word. I do not think it means what you think it means. See here for the details: https://en.wikipedia.org/wiki/First-class_citizen https://en.wikipedia.org/wiki/First-class_citizen . tl;dr: First-class-ness is about semantics, not syntax. And, while every language (including Racket) is broken in some ways, it's not broken enough for associative data structures to be inexpressible in it.
> There's a literal syntax for them.
Why does this matter in a language with macros anyway?
- emidln 9y ago>> There's a literal syntax for them. > Why does this matter in a language with macros anyway If you don't have this, you end up with a bunch of read table syntaxes for the same thing. These usually don't play nicely together. See Common Lisp libraries (since CL doesn't provide this syntax in the standard) for all the subtly incompatible hash table read syntaxes and printer implementations you can stomach.
- catnaroek 9y agoThe solution to this specific problem is library standardization, not hardcoding more data structures into the core language.