Protected object types are one of three major extensions to Ada 83 proposed by Ada 9X. This language feature is intended for light-weight data synchronization between tasks. The Orca parallel programming language has a very similar construct, the shared data-object, with which we have over five years of experience, both in usage and implementation. This paper compares protected objects and shared data-objects, with regard to design, usage, and implementation.
/lp/association-for-computing-machinery/comparing-data-synchronization-in-ada-9x-and-orca-rUmotyXN2T