(* * This is a stub spec file that helps the SpecL code generator deal with loose * top-level operations. A 'loose' operation is one that's not defined inside * a spec module. Defining the stub object "Main" results in loose methods * being put in a Java class named "Main", in the Java package named "Main". *

* In a modularized spec, the code generator puts methods into "distinguished * classes". A distinguished class is one that's derived from a "distinguished * object", which is in turn defined as an object that has the same name as its * module. The SpecL code generator looks for such distinguished objects when * it generates method code, and puts the derived methods in those classes. *

* For loose operations, their distinguished class is "Main", since that's the * default module into which loose operations are put. So, defining a * top-level object named "Main" provides a home for loose methods, i.e., the * class Main.Main. * *) object Main;