Data Abstraction, Implementation, Specification, and Testing
ACM Transactions on Programming Languages and Systems (TOPLAS)
On the inevitable intertwining of specification and implementation
Communications of the ACM
Automatic data structure selection: an example and overview
Communications of the ACM
Communicating sequential processes
Communications of the ACM
Communications of the ACM
Coroutines
Formal specification as a design tool
POPL '80 Proceedings of the 7th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
PASCAL user manual and report
Data structure models for programming languages
ACM SIGPLAN Notices
Hi-index | 0.00 |
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.