Communications of the ACM
Abstraction and verification in Alphard: defining and specifying iteration and generators
Communications of the ACM
Communications of the ACM
On the criteria to be used in decomposing systems into modules
Communications of the ACM
BLISS: a language for systems programming
Communications of the ACM
PASCAL user manual and report
Proceedings of the international symposium on Extensible languages
Proceedings of the international symposium on Extensible languages
Gypsy: A language for specification and implementation of verifiable programs
Proceedings of an ACM conference on Language design for reliable software
Dynamic storage allocation techniques.
Dynamic storage allocation techniques.
Preliminary Ada reference manual
ACM SIGPLAN Notices - Preliminary Ada reference manual
Report on the programming language Euclid
ACM SIGPLAN Notices
The ML approach to the readable all-purpose language
ACM Transactions on Programming Languages and Systems (TOPLAS)
Issues in the design of object-oriented database programming languages
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Open implementation design guidelines
ICSE '97 Proceedings of the 19th international conference on Software engineering
A programmer controlled approach to data and control abstraction
Proceedings of the 1983 ACM SIGPLAN symposium on Programming language issues in software systems
Abstraction, data types, and models for software
Proceedings of the 1980 workshop on Data abstraction, databases and conceptual modeling
ACM SIGPLAN Notices
IWSAS'01 Proceedings of the 2nd international conference on Self-adaptive software: applications
Hi-index | 0.00 |
Language implementors frequently make pre-emptive decisions concerning the exact implementations of language features. These decisions constrain programmers' control over their computations and may tempt them to write involuted code to obtain special (or efficient) effects. In many cases, we can distinguish some properties of a language facility that are essential to the semantics and other properties that are incidental. Recent abstraction techniques emphasize dealing with such distinctions by separating the properties that are necessary to preserve the semantics from the details for which some decision must be made but many choices are adequate. We suggest here that these abstraction techniques can be applied to the problem of pre-emptive language decisions by specifying the essential properties of languages facilities in a skeleton based language and defining interfaces that will accept a variety of implementations that differ in other details.