replaced SExtension by SynTrans (mixfix stuff in Mixfix);
authorwenzelm
Fri, 19 Aug 1994 15:34:58 +0200
changeset 549 5d904be18774
parent 548 12208de7edfe
child 550 353eea6ec232
replaced SExtension by SynTrans (mixfix stuff in Mixfix); private structs now hidden within PrivateSyntax;
src/Pure/Syntax/ROOT.ML
--- 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;
+