Examples of Shift projects and programs

Shift Projects

Smart-AHS
This project uses shift to simulate automated highways.
Shop floor simulation
This project attempts to simulate a ration-manufacturing shop floor. Conveyor belts carry trays from a source to a weighing station, which funnels them to other conveyor belts depending on the weight of the tray.

Shift Programs

Stars indicate the complexity of the program.
* = simple, *****=complex
* precedence.hs
Example that discusses precedence rules for initializing variables at instantiation.
* setupprec.hs
Example that illustrates precedence rules in setup actions.
* tank_monit.hs
Examples of i/o connection and synchronization of independent components.
** cfunction.hs
Gives an example of how to link in C functions. You have to compile and link in the file cfun.c
* linklist.hs
Gives an example of how to construct link lists
* manySprings.hs
Oscillating Springs. Example of synchronizing with all elements of a set
* manySprings2.hs
Similar to manySprings.hs. Example of synchronizing with one element of a set.
* manySprings3.hs
A specification that results in no transitions. Illustrates how NOT to use set synchronization.
** mutex.hs
Another example of synchronizing with one element of a set. Implement mutual exclusion.
** particle.hs
Midsize example that illustrates several features. Example is discussed in the paper.
*** bounce.hs
Bouncing balls (or pool table) example. Shows how discrete states and flow equations can be used to describe the behavior of components.
**** ljoin.hs
Three vehicles that communicate and form a platoon. This example contains fairly complex synchronization sequences and reset actions. It is documented in ljoin.txt

Copyright © 1996-97, California PATH UC Berkeley , SHIFT Team
Last modified: August 4th, 1997