| ▲ | mtdewcmu 3 days ago | ||||||||||||||||||||||||||||||||||||||||
I started learning Common Lisp, but ASDF and Quicklisp threw me off. I couldn't tell if you were supposed to choose one or the other or they were used together. This might revive my interest in Common Lisp if I get around to reading it. But in the meantime I drifted off to Racket, which is relatively well documented and has extensive libraries and really unique features. | |||||||||||||||||||||||||||||||||||||||||
| ▲ | stackghost 3 days ago | parent | next [-] | ||||||||||||||||||||||||||||||||||||||||
The packaging story in common lisp is.... Not great. It's hamstrung by archaic naming conventions that confuse newcomers. What CL calls a system is roughly analogous to what most other languages call a package. What CL calls a package is what other languages call a namespace. Despite all that it's a pretty good language if you can find libraries for what you need. The de facto standard implementation (sbcl) has a very good compiler and an acceptable GC. The language itself is expressive and it makes for very quick and pleasant DX. I love writing common lisp. | |||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||
| ▲ | bilegeek 3 days ago | parent | prev [-] | ||||||||||||||||||||||||||||||||||||||||
For anybody who's still confused, the tl;dr is ASDF is the actual package loading mechanism, Quicklisp doubles as an ASDF wrapper and a package manager. | |||||||||||||||||||||||||||||||||||||||||