> My theory: what matters isn't "best practices", it's have a coherent conceptual design and code that reflects that design.
I think so too; that said, the language could definitely be better. It suffers from a lot of primitive obsession. Instead of structs, you often find either vectors or lists with predefined element positions; instead of map, ordered map, and multimap types, it's just various kinds of lists everywhere. They're not even used consistently: for the same thing, one package may use an alist and another a plist.
Yeah, I could also see some improvements like that. But, compared to other codebases I've worked with that had the same problem (cough nixpkgs cough), it's amazing how much better the Emacs programming experience has been.
I think so too; that said, the language could definitely be better. It suffers from a lot of primitive obsession. Instead of structs, you often find either vectors or lists with predefined element positions; instead of map, ordered map, and multimap types, it's just various kinds of lists everywhere. They're not even used consistently: for the same thing, one package may use an alist and another a plist.