[comp.lang.ada] Re^2: Teaching Concurrency

kim@wacsvax.OZ (Kim Shearer) (01/14/90)

meissner@osf.org (Michael Meissner) writes:

>In article <10330@june.cs.washington.edu> pattis@cs.washington.edu (Richard Pattis) writes:

>| OK, so this begs the question: what is the "smallest" assignment that can
>| use concurrency fruitfully. I would like to teach a bit about tasking in
>| one of my classes, but I don't want students to get "wrong" ideas from the
>| example I use.  Anyone out there have such an assignment? Is there some prime
>| example out there of a good use of multi-tasking that is amenable to
>| classroom instruction?

 Another simple real worldish type example would be a centrally controlled
distributed monitoring system. This is actually pinched from a computer
controlled irrigation monitoring system I worked on in ADA.

 The idea is that you have a number of fairly dumb monitoring tasks which
report to a central controlling program. The central system accepts 
input from the monitoring tasks and sends a simple reply. The input and
output could be very simple and very synthetic. The real tasking comes 
as the student would need to produce input and output routines to 
coordinate the input from and output to multiple monitors.

 The students could be provided with a simple monitor program to set up 
n times, and asked to write the central controller that conforms to
some simple protocol.