src/Pure/Thy/ROOT.ML
author wenzelm
Wed, 19 Jan 1994 14:45:07 +0100
changeset 242 8fe3e66abf0c
parent 74 208ab8773a73
child 390 b074205ac50a
permissions -rw-r--r--
commented out sig constraint of functor (for debugging purposes);

(*  Title:      Pure/Thy/ROOT
    ID:         $Id$
    Author:     Sonia Mahjoub / Tobias Nipkow
    Copyright   1992  TU Muenchen

This file builds the theory parser.
It assumes the standard Isabelle environment.
*)

use "scan.ML";
use "parse.ML";
use "syntax.ML";
use "read.ML";


structure Keyword =
    struct
    val alphas =  ["classes", "default", "arities", "types",
                   "consts", "rules", "end", "rules", "mixfix",
                   "infixr", "infixl", "binder", "translations"]

    val symbols = [",", "<", "{", "}", "(", ")", "(*", "*)",
                   "[", "]", "::", "=", "+", "==", "=>", "<="]
    end;

structure Lex     = LexicalFUN (Keyword);
structure Parse   = ParseFUN (Lex);
structure ThySyn  = ThySynFUN (Parse);

(*This structure is only defined to be compatible with older versions of
  READTHY. Don't use it in newly created theory/ROOT.ML files! Instead
  define a new structure. Otherwise Poly/ML won't save a reference variable
  defined inside the functor. *)
structure Readthy = ReadthyFUN (structure ThySyn = ThySyn);
open Readthy;