ABSTRACT
SimAda is a concurrency simulator, reengineered from the simulator given in M. Ben-Ari, Principles of Concurrent Programming. The language was written in Ada 95 to enhance portability and to utilise the structuring constructs of a modern language. The concurrency constructs simulated include protected types which are new for Ada 95, as well as the Ada rendezvous. Several task scheduling models can be chosen for experimentation. SimAda is intended for teaching concurrency, both by running programs and by studying the implementation techniques.
- 1.Ben-Ari, M. Principles of Concurrent Programming. Prentice Hall International, 1982. Google ScholarDigital Library
- 2.Burns, A. and Davies, G. Concurrent programming. Addison-Wesley, 1993. Google ScholarDigital Library
- 3.Bynum, B. and Camp, T. After you, Alfonse: a mutual exclusion toolkit. 27th SIGCSE Technical Symposium 1996, 170-174. Google ScholarDigital Library
- 4.Feldman, M., Lopes A. and Perez, M. Small-Ada: Personal computer courseware for studying concurrent programming. 21~t SIGCSE Technical Symposium, 1990, 206-21 I. Google ScholarDigital Library
- 5.Levy, S.P. Computer language usage in CS 1: survey results. SIGCSE Bulletin 27(3), 1995, 21-26. Google ScholarDigital Library
Index Terms
- Re-engineering a concurrency simulator
Recommendations
Re-engineering a concurrency simulator
SimAda is a concurrency simulator, reengineered from the simulator given in M. Ben-Ari, Principles of Concurrent Programming. The language was written in Ada 95 to enhance portability and to utilise the structuring constructs of a modern language. The ...
Implementing transactions using Ada exceptions: which features are missing?
Exception handling for a 21st century programming language proceedingsTransactional Drago programming language is an Ada extension that provides transaction processing capabilities. Exceptions have been integrated with transactions in Transactional Drago; exceptions are used to notify transaction aborts and any unhandled ...
Concurrency control for distributed cooperative engineering applications
SAC '02: Proceedings of the 2002 ACM symposium on Applied computingDistributed cooperative engineering applications require consistent and long-term sharing of large volumes of data, which may cause conflicts due to concurrent read/write operations. Therefore designing concurrency control for underlying middleware ...
Comments