replaced SExtension by SynTrans (mixfix stuff in Mixfix);
private structs now hidden within PrivateSyntax;
--- a/src/Pure/Syntax/ROOT.ML Fri Aug 19 15:34:28 1994 +0200
+++ b/src/Pure/Syntax/ROOT.ML Fri Aug 19 15:34:58 1994 +0200
@@ -11,28 +11,33 @@
use "syn_ext.ML";
use "parser.ML";
use "type_ext.ML";
-use "sextension.ML";
+use "syn_trans.ML";
use "mixfix.ML";
use "printer.ML";
use "syntax.ML";
-structure Pretty = PrettyFun();
-structure Lexicon = LexiconFun();
-structure Scanner: SCANNER = Lexicon;
-structure Ast = AstFun(Pretty);
-structure SynExt = SynExtFun(structure Lexicon = Lexicon and Ast = Ast);
-structure Parser = ParserFun(structure Symtab = Symtab and Lexicon = Lexicon
- and SynExt = SynExt);
-structure TypeExt = TypeExtFun(structure Lexicon = Lexicon and SynExt = SynExt);
-structure SExtension = SExtensionFun(structure TypeExt = TypeExt and Parser = Parser);
-structure Mixfix = MixfixFun(structure Lexicon = Lexicon and SynExt = SynExt and
- SExtension = SExtension);
-structure Printer = PrinterFun(structure Symtab = Symtab and TypeExt = TypeExt
- and SExtension = SExtension);
-structure Syntax = SyntaxFun(structure Symtab = Symtab and TypeExt = TypeExt
- and SExtension = SExtension and Mixfix = Mixfix and Printer = Printer);
-structure BasicSyntax: BASIC_SYNTAX = Syntax;
+structure PrivateSyntax =
+struct
+ structure Pretty = PrettyFun();
+ structure Lexicon = LexiconFun();
+ structure Scanner: SCANNER = Lexicon;
+ structure Ast = AstFun(Pretty);
+ structure SynExt = SynExtFun(structure Lexicon = Lexicon and Ast = Ast);
+ structure Parser = ParserFun(structure Symtab = Symtab and Lexicon = Lexicon
+ and SynExt = SynExt);
+ structure TypeExt = TypeExtFun(structure Lexicon = Lexicon and SynExt = SynExt);
+ structure SynTrans = SynTransFun(structure TypeExt = TypeExt and Parser = Parser);
+ structure Mixfix = MixfixFun(structure Lexicon = Lexicon and SynExt = SynExt and
+ SynTrans = SynTrans);
+ structure Printer = PrinterFun(structure Symtab = Symtab and TypeExt = TypeExt
+ and SynTrans = SynTrans);
+ structure Syntax = SyntaxFun(structure Symtab = Symtab and TypeExt = TypeExt
+ and SynTrans = SynTrans and Mixfix = Mixfix and Printer = Printer);
+ structure BasicSyntax: BASIC_SYNTAX = Syntax;
+end;
-(* FIXME tmp hacks *)
-structure BasicSyntax = struct open BasicSyntax Mixfix end;
-structure OldMixfix: SEXTENSION0 = SExtension;
+structure Pretty = PrivateSyntax.Pretty;
+structure Scanner = PrivateSyntax.Scanner;
+structure Syntax = PrivateSyntax.Syntax;
+structure BasicSyntax = PrivateSyntax.BasicSyntax;
+