public class Compiler extends CompilerConstants
_IF, APPLICATION, BEGIN, DEFINE, LAMBDA, LETREC, MAKEANNOTATION, PROGRAM, QUOTE, REALTAIL, SET, SYNTACTIC_TOKEN_COUNT, SYNTACTIC_TOKENS, UNKNOWN
BACKQUOTE, bundles, caseSensitive, EMPTYLIST, EMPTYVEC, EOF, ERRORK, EVAL, EXPSC, EXPTOP, FALSE, FCONT, FIVE, JEXCEPTION, LOCATION, maxFloatPrecision, MESSAGE, minFloatPrecision, NAME, OTHER, PARENT, permitInterrupts, QUOTESYM, REPORT, SETBANG, SISC, SISC_SPECIFIC, SISCB, SOURCE_COLUMN, SOURCE_FILE, SOURCE_LINE, SYMENV, THIS, TOPLEVEL, TRUE, UNQUOTE, UNQUOTE_SPLICING, VOID, ZV
Constructor and Description |
---|
Compiler() |
Modifier and Type | Method and Description |
---|---|
static void |
addSpecialForms(SymbolicEnvironment menv) |
static Expression |
application(Interpreter r,
Expression rator,
Expression[] rands,
int context,
Pair annotation,
SymbolicEnvironment env) |
protected Expression |
compile(Interpreter r,
Expression v,
Pair sets,
sisc.compiler.Compiler.ReferenceFactory rf,
int context,
SymbolicEnvironment env,
Pair an) |
Expression |
compile(Interpreter r,
Expression v,
SymbolicEnvironment env) |
Expression |
compileApp(Interpreter r,
Pair expr,
Pair sets,
sisc.compiler.Compiler.ReferenceFactory rf,
int context,
SymbolicEnvironment env,
Pair an) |
Expression |
compileLetrec(Interpreter r,
Symbol[] formals,
Symbol[] lexicals,
Expression[] rands,
Expression body,
Pair sets,
sisc.compiler.Compiler.ReferenceFactory rf,
SymbolicEnvironment env,
int context) |
int[] |
findBoxes(Symbol[] formals,
Pair sets) |
static int |
getExpType(SymbolicEnvironment env,
Value s) |
static void |
main(java.lang.String[] args) |
static Expression |
makeFillRib(Interpreter r,
Expression lastRand,
Expression rand,
int pos,
Expression nxp,
boolean immediate) |
protected int[][] |
resolveCopies(sisc.compiler.Compiler.ReferenceFactory rf,
Symbol[] lexicals) |
annotated, annotatedAppEval, append, argCheck, argsToSymbols, assq, bininport, bininstream, binoutport, binoutstream, box, character, charinport, charinreader, charoutport, charoutwriter, charsetFromString, chr, cont, currentClassLoader, env, error, error, error, error, error, error, error, expr, getDefaultCharacterSet, immutablePair, immutableVector, inport, javaExceptionToString, javaWrap, justify, length, liMessage, liMessage, liMessage, liMessage, liMessage, liMessage, liMessage, list, list, list, list, list, makeURL, mapcar, memq, nlib, num, outport, pair, pairToExpressions, pairToExpVect, pairToValues, proc, read, registerBundle, reverse, reverseInPlace, simpleErrorToString, sourceAnnotations, str, string, sym, symbol, symval, truePair, truth, truth, typeError, typeError, updateName, url, url, url, valArrayToList, valArrayToList, valArrayToVec, vec, warn, warn, warn
public static void addSpecialForms(SymbolicEnvironment menv)
protected Expression compile(Interpreter r, Expression v, Pair sets, sisc.compiler.Compiler.ReferenceFactory rf, int context, SymbolicEnvironment env, Pair an) throws ContinuationException
ContinuationException
public Expression compile(Interpreter r, Expression v, SymbolicEnvironment env) throws ContinuationException
ContinuationException
public static final int getExpType(SymbolicEnvironment env, Value s)
protected int[][] resolveCopies(sisc.compiler.Compiler.ReferenceFactory rf, Symbol[] lexicals)
public Expression compileApp(Interpreter r, Pair expr, Pair sets, sisc.compiler.Compiler.ReferenceFactory rf, int context, SymbolicEnvironment env, Pair an) throws ContinuationException
ContinuationException
public static final Expression makeFillRib(Interpreter r, Expression lastRand, Expression rand, int pos, Expression nxp, boolean immediate)
public Expression compileLetrec(Interpreter r, Symbol[] formals, Symbol[] lexicals, Expression[] rands, Expression body, Pair sets, sisc.compiler.Compiler.ReferenceFactory rf, SymbolicEnvironment env, int context) throws ContinuationException
ContinuationException
public static final Expression application(Interpreter r, Expression rator, Expression[] rands, int context, Pair annotation, SymbolicEnvironment env) throws ContinuationException
ContinuationException
public static void main(java.lang.String[] args) throws java.lang.Exception
java.lang.Exception