(* controller.sig *) (* Copyright (C) 2008 Alley Stoughton This file is part of crypto, a cryptogram encoder/decoder. See the file COPYING.txt for copying and usage restrictions *) (* controller - command loops see ControllerFunc for what main does as a function of the Model and View structures *) signature CONTROLLER = sig structure Model : MODEL structure View : VIEW (* the DATA parts of Model and View must be identical, which implies that the following sharing constraints will be satisfied *) sharing type Model.SymLinOrd.elem = View.SymLinOrd.elem sharing type Model.pds = View.pds sharing type Model.SymSet.set = View.SymSet.set sharing type Model.SymLexicon.lexicon = View.SymLexicon.lexicon val main : string * string list -> OS.Process.status end;