#!vsl

// $Id: bigflow,v 1.1.1.1 1995/05/01 15:48:48 zeller Exp $
// Grosser Tester Flowcharts

// $Log: bigflow,v $
# Revision 1.1.1.1  1995/05/01  15:48:48  zeller
# DDD 0.9 distribution
#
// Revision 9.4  1993/06/25  12:03:48  zeller
// Fix: Kommentare Log-Datei angepasst
//
// Revision 9.3  1993/05/22  20:22:22  zeller
// %Q% added by apply-q-flag.sh 1.5
//
// Revision 9.2  1993/01/27  15:44:35  zeller
// Fix: head() eingefuegt
// 
// Revision 9.1  1991/07/08  06:01:01  zeller
// Installierte Version
// 
// Revision 8.1  1991/07/06  15:04:06  zeller
// Installierte Version
// 
// Revision 4.1  1991/05/25  12:53:41  zeller
// Neue Version mit folgenden Eigenschaften:
// Let- und Where-Konstrukten;
// Lokalen und globalen Funktionen, Overloading;
// Erweiterten Fehlermeldungen.
// 
// Revision 1.2  1991/05/08  11:51:13  zeller
// labelFlow() durch ovalFlow() ersetzt
// 
// Revision 1.1  1991/05/06  10:27:08  zeller
// Initial revision
// 

#include <flow.vsl>
#include <list.vsl>

test() -> 
  seqFlow(ovalFlow("BEGIN"),

  positiveTopLoopFlow("not empty",

  negativeBottomLoopFlow("fertig?",

  positiveBottomLoopFlow("not fertig?",

  negativeTopLoopFlow("done",

  testFlow("a = c?", 
	testFlow("a = b?", 
	  seqFlow(
	  printFlow("writeln('abc')"), 
	  punchFlow("readln(x)"), 
	  statFlow("a := 1")), 
	seqFlow(statFlow("Forget it"), statFlow("Oh Yeah"), statFlow("Oh Yeah"))))
	
  )))),

  ovalFlow("END"));

test2() -> negativeBottomLoopFlow("a = b?", statFlow("writeln('hello, joe')"));

main() -> head(test());
