File(s) stored somewhere else
Please note: Linked content is NOT stored on Carnegie Mellon University and we can't guarantee its availability, quality, security or accept any liability.
Maybe Your Next Programming Language Shouldn't Be a Programming Language
Software needs now strain the design limits of traditional programming languages. Modern application needs are not satisfied by traditional programming languages, which evolved in response to systems programming needs. Current programming language research focuses on incremental improvements, not on major changes to the nature of software development. But major breakthroughs are needed in two areas: Non-programmers dominate modern computer use. Low computing costs have enabled a wide spectrum of application, and end users who are not programmers need to control their own computations. Order-of-magnitude increases in service require substantial shifts of technology. Computer users are interested in results, not in programming; software must reflect this. Requirements for large complex software systems exceed our production ability. Growth of demand is greater than growth in capacity, and system requirements exceed the scope of conventional languages. Software lacks a true engineering base. Language concepts can support a design level above the algorithm/data structure level and contribute to an engineering discipline. Programming language designers must look beyond the traditional systems programming domain and tackle problems of special-purpose software and system-level software design.