Copyright (C) 1992, Digital Equipment Corporation                         
 All rights reserved.                                                      
 See the file COPYRIGHT for a full description.                            
                                                                           
 Last modified on Thu Jun 16 13:34:26 PDT 1994 by heydon                   
      modified on Fri Aug  7 21:51:50 PDT 1992 by myers                    
<* PRAGMA LL *>
INTERFACE JunoBuild;
 Higher-level procedures for compiling editor commands. 
IMPORT JunoScope, JunoAST, JunoCompileErr;
PROCEDURE Cmd(cmd: JunoAST.Cmd; scp: JunoScope.T): CARDINAL
    RAISES {JunoCompileErr.Error};
 Compiles cmd under scope scp, and installs the resulting bytestream in
   a fixed slot of the run-time global code table JunoRT.code_tbl (possibly
   overwriting the last bytestream installed there). Returns the index of this
   fixed slot in the code table. 
PROCEDURE CurrCmd(
    cmd: JunoAST.Cmd;
    scp: JunoScope.T;
    checkTotal := FALSE):
    CARDINAL RAISES {JunoCompileErr.Error};
 Calls Cmd above on the command IF <cmd> FI; HALT. If checkTotal, then
   first calls JunoChckBNF.TotalCommand of the resulting command to
   guarantee it has the proper form. 
END JunoBuild.