Five Questions about Language Design
a day ago
- Programming languages are designed for people, not computers; they must accommodate human cognitive limitations.
- The best languages are often created by their authors for their own use, avoiding a condescending attitude toward programmers.
- Languages should grant programmers maximum control, as seen in Lisp's macros and openness, treating programmers as equal partners.
- Brevity in code and manuals is highly valued by skilled hackers, and should be a design goal.
- Hacking is like architecture, not a science; the aim is to create great programs, not necessarily publishable ideas.
- Server-based software allows any language to be used, requires support for frequent releases, and may benefit from continuations.
- Language design should be driven by a real application, be good for throwaway programs, and recognize that syntax and semantics are connected.