A central issue in the design of concurrent object-oriented languages is the relation between objects and processes. Processes and objects are both relatively complex entities that are used to structure the control and data flow of computation. A reasonable starting point in language design is to expect some form of connection between the two constructs. In addition, it seems difficult to avoid design considerations that involve interactions between obejcts and processes. For example, messages to objects might be serialized, or allowed to arrive in parallel.
Some of the main language design possibilities are listed below:
Students are required to complete a term project, which may be either a classroom presentation or written report. The topic may either be a survey and analysis of some problem relevant to the course or independent original research on a scale appropriate for a 3-credit course.
Prerequisite: CS 242 or CS 258.