The treatment of data types in EL1
Communications of the ACM
A technique for software module specification with examples
Communications of the ACM
Communications of the ACM
On the criteria to be used in decomposing systems into modules
Communications of the ACM
Protection in programming languages
Communications of the ACM
Program development by stepwise refinement
Communications of the ACM
HYDRA: the kernel of a multiprocessor operating system
Communications of the ACM
POPL '73 Proceedings of the 1st annual ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Toward a Methodology for Designing Large Systems and Verifying Their Properties
GI - 4. Jahrestagung
On the problem of uniform references to data structures
Proceedings of the international conference on Reliable software
Specification techniques for data abstractions
Proceedings of the international conference on Reliable software
On attaining reliable software for a secure operating system
Proceedings of the international conference on Reliable software
On the need for fewer restrictions in changing compile-time environments
ACM SIGPLAN Notices
An example of programming with abstract data types
ACM SIGPLAN Notices - Special issue on programming language design
SIMULA 67 common base language, (Norwegian Computing Center. Publication)
SIMULA 67 common base language, (Norwegian Computing Center. Publication)
Applying Synthesis Principles to Create Responsive Software Systems
IEEE Transactions on Software Engineering
Operating System Structures to Support Security and Reliable Software
ACM Computing Surveys (CSUR)
POPL '83 Proceedings of the 10th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Strategies for data abstraction in LISP
LFP '80 Proceedings of the 1980 ACM conference on LISP and functional programming
An experiment in software engineering: The Architecture Research Facility as a case study
ICSE '79 Proceedings of the 4th international conference on Software engineering
Designing software for ease of extension and contraction
ICSE '78 Proceedings of the 3rd international conference on Software engineering
Towards an engineering approach to software design
ICSE '76 Proceedings of the 2nd international conference on Software engineering
ACM SIGSOFT Software Engineering Notes
An independent audit framework for software dependent voting systems
Proceedings of the 14th ACM conference on Computer and communications security
Abstraction hierarchies in top-down design
Journal of Systems and Software
Hi-index | 0.00 |
If a program is structured using abstract data types as the basic unit of modularity, then that program is much easier to extend or modify. This thesis is illustrated by the staged development of a program to compute prime numbers based on the sieve of Eratosthenes. This paper includes an extensive introduction to the concept of abstract data types and can be used as a tutorial survey. It includes discussions on the use of abstract data types in connection with recent approaches to data abstractions, heirarchical structure, and program design. Abstract data types are an extension and modification of the traditional concept of data type. An abstract data type defines not only a data representation for objects of the type but also the set of operations that can be performed on objects of the type. Furthermore, the abstract data type can protect the data representation from direct access by other parts of the program.