Annotation of researchv10no/cmd/sml/src/sepcomp/importer.sig, revision 1.1

1.1     ! root        1: (* Copyright 1989 by AT&T Bell Laboratories *)
        !             2: (* importer.sig: this is all the Interact functor needs from the import
        !             3:    mechanism. *)
        !             4: 
        !             5: signature IMPORTER =
        !             6:    sig
        !             7:       exception Import of string
        !             8:                        (* Raised for any sensible failure to import. *)
        !             9: 
        !            10:       type lvar sharing type lvar = Access.lvar
        !            11: 
        !            12:      (* We essentially have mutual recursion between Interact and Importer -
        !            13:         Interact needs to be able to import things, and Importer needs to
        !            14:        be able to implement a top-level loop. The ideal solution is to put
        !            15:        the functions bind, lookup, etc. into a common sub-module. The slightly
        !            16:        hacked solution, here, is to model the recursion by passing part of
        !            17:        Interact's environment (the functions) in a record to Importer. *)
        !            18: 
        !            19:       datatype ToplevelFns =
        !            20:          TOPLEVEL_FNS of {bind: lvar * System.Unsafe.object -> unit,
        !            21:                          lookup: lvar -> System.Unsafe.object,
        !            22:                          parse: Lex.lexer -> BareAbsyn.dec,
        !            23:                          getvars: BareAbsyn.dec -> lvar list,
        !            24:                          opt: Lambda.lexp -> Lambda.lexp
        !            25:                         }
        !            26: 
        !            27:       val getAndExecModule: string * Env.env * ToplevelFns -> unit
        !            28:    end

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.