See the following:
- Module systems in programming languages
- Tooling for a good programming language
- Syntax styles in programming languages
- Common function names
- Programming language design checklist
- Writing cross-language implementation is difficult
- Programming languages resources
A thought exercise that I’ve been pursuing: What would I change about programming language X?
See also: Code in a good programming language does not reveal its author