Implementation prototypes in the development of programming language features
Ray Ford, Chris D. Marlin · ACM SIGSOFT Software Engineering Notes · 1982
This paper describes the experiences of the authors in the application of prototyping techniques to the development of programming languages with "advanced" features such as coroutines and abstract data types. The essence of the approach described here is the careful extension of a suitable base language (Pascal was used in all the experiments described here) by one new facility at a time and the production of a prototype implementation of the new language by modifying an existing implementation of the base language. Criteria for choosing a base language, the central role of formal semantic models in the approach and alternative strategies for producing a new prototype implementation from an existing one are all discussed in some detail.