UX Design for Langauges - caffeine-suite/caffeine-script GitHub Wiki

The goal is to take a wholistic approach to the entire life-cycle of programming. The programming language is an important part of this process, and, together with its tools, sets the stage for the entire process. Decisions at the language level affect everything, over the entire life of a product. Therefore a language should be designed in anticipation of how it will affect maintenance of the language, the building of its tools such as compilers and editors, analysis, white-boarding, brainstorming, prototyping, optimizing, debugging, performance, and, most of all, productivity.