Implementing data abstractions and monitors in UCSD Pascal
@article{Boddy1983ImplementingDA, title={Implementing data abstractions and monitors in UCSD Pascal}, author={David E. Boddy}, journal={ACM SIGPLAN Notices}, year={1983}, volume={18}, pages={15-24} }
Numerous modern programming languages provide constructs for implementing data abstractions and monitors. This paper discusses practical techniques for realizing these programming constructs in the UCSD dialect of Pascal. Although the Pascal language as defined by Wirth [Jen74] is not amenable to the use of these programming constructs, the extensions provided by the UCSD dialect [Cla82] provide an excellent basis for implementing both data abstractions and monitors.
9 Citations
The implementation kit with monitors
- Computer ScienceSIGP
- 1984
This note describes the modi f icat ions necessary to incorporate Monitors d i r e c t l y into the language.
A modula‐2 kernel for supporting monitors
- Computer ScienceSoftw. Pract. Exp.
- 1986
This paper discusses an implementation of monitors using a kernel written in Modula‐2, and finds the monitor concept has been found suitable for the design of several practical operating systems.
Modern Multithreading : Implementing, Testing, and Debugging Multithreaded Java and C++/Pthreads/Win32 Programs
- Computer Science
- 2005
This textbook examines languages and libraries for multithreaded programming. Readers learn how to create threads in Java and C++, and develop essential concurrent programming and problem-solving…
A Course on Software Enigneering for Concurrent Systems
- Computer ScienceCSEE
- 1988
This paper describes a graduate level course that covers concepts, techniques and tools for the specification, design, coding, and validation of concurrent software. This course is intended to…
Replay and testing for concurrent programs
- Computer ScienceIEEE Software
- 1991
The purpose of deterministic execution debugging to to replay executions of a concurrent program so that debugging information can be collected and the process of designing replay tubes is described.
Modula-2 and the monitor concept
- Computer ScienceSIGP
- 1984
The monitor concept [Hoa74] is one approach towards ensuring a reliable concurrent programming environment that encapsulates the shared data area and the procedures that will act on this data.
On the design of monitors with priority conditions
- Computer ScienceSIGP
- 1984
This paper investigates the implementation of priority conditions for monitors under UCSD Pascal and proposes two such status queries which are both useful and efficient and it is shown that the Implementation of Hoare's "alarmclock" monitor is made simpler and more efficient through the use of these queries.
Signalling regions: Multiprocessing in a shared memory reconsidered
- Computer ScienceSoftw. Pract. Exp.
- 1990
This paper will re‐examine the monitor concept in its original context and proposes a language structure called a signalling region that together with the notion of encapsulation by modules solves the immediate resumption problem and avoids the nested monitor problem.
References
SHOWING 1-3 OF 3 REFERENCES
Abstraction mechanisms in CLU
- Computer ScienceCommun. ACM
- 1977
This paper provides an introduction to the abstraction mechanisms in CLU and illustrates the utility of the three kinds of abstractions in program construction and shows how CLU programs may be written to use and implement abstractions.
The case against Pascal as a teaching tool
- EducationSIGP
- 1982
The overuse of global variables dictated by the existence of nested scope is compared to the undisciplined use of the goto statement.
Monitors: an operating system structuring concept
- Computer ScienceCACM
- 1974
This paper develops Brinch-Hansen's concept of a monitor as a method of structuring an operating system. It introduces a form of synchronization, describes a possible method of implementation in…