Abstract
The distinctions between the two forms of procedural data abstraction— abstract data types and objects—are well known. An abstract data type provides an opaque type declaration, and an implementation that manipulates the modules of the abstract type, while an object uses procedural abstraction to hide an individual implementation. The object-capability model has been proposed to enable objectoriented programs to be written securely, and has been adopted by a number of practical languages including JavaScript, E, and Newspeak. This chapter addresses the questions: how can we implement abstract data types in an object-capability language? and, how can we incorporate primitive concrete data types into a primarily object-oriented system?.
| Original language | English |
|---|---|
| Title of host publication | Principled Software Development |
| Subtitle of host publication | Essays Dedicated to Arnd Poetzsch-Heffter on the Occasion of his 60th Birthday |
| Editors | Peter Müller, Ina Schaefer |
| Publisher | Springer International Publishing AG |
| Pages | 221-240 |
| Number of pages | 20 |
| ISBN (Electronic) | 9783319980478 |
| ISBN (Print) | 9783319980461 |
| DOIs | |
| Publication status | Published - 2018 |
| Externally published | Yes |
Fingerprint
Dive into the research topics of 'Abstract and Concrete Data Types vs Object Capabilities'. Together they form a unique fingerprint.Cite this
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver