|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object | +--jsint.Scheme
This class represents a Scheme interpreter.
| Field Summary | |
static java.lang.String[] |
ARGS
The main() arguments |
static Symbol |
EVAL
|
static Symbol |
LOAD
|
| Constructor Summary | |
Scheme()
|
|
| Method Summary | |
static java.lang.Object |
analyze(java.lang.Object x,
DynamicEnvironment dynamicEnv,
LexicalEnvironment lexenv)
Analyze (or preprocess or precompile) an expression into "code". |
static Evaluator |
currentEvaluator()
|
static void |
defaultMain(java.lang.String[] files)
The default main() behavior. |
static java.lang.Boolean |
environmentImport(java.lang.Object x,
java.lang.Object prefix)
|
static java.lang.Object |
eval(java.lang.Object x)
Evaluate an s-expression in the global environment. |
static java.lang.Object |
eval(java.lang.Object x,
java.lang.Object env)
Evaluate an s-expression in a lexical environment. |
static java.lang.Object |
evalToplevel(java.lang.Object x,
DynamicEnvironment env)
evalToplevel evaluates each element of a BEGIN. |
static java.lang.Object |
execute(java.lang.Object x,
LexicalEnvironment lexenv)
Evaluate analyzed code in a lexical environment. |
static java.io.PrintWriter |
getError()
|
static DynamicEnvironment |
getInitialEnvironment()
|
static InputPort |
getInput()
|
static DynamicEnvironment |
getInteractionEnvironment()
|
static DynamicEnvironment |
getNullEnvironment()
|
static java.io.PrintWriter |
getOutput()
|
static void |
interruptCheck()
Maybe interrupt this thread of execution. |
static boolean |
isInterruptable()
|
static java.lang.Boolean |
languageImport(java.lang.Object x)
|
static java.lang.Object |
load(InputPort in)
|
static java.lang.Object |
load(java.lang.Object fileName)
Eval all the expressions in a file. |
static DynamicEnvironment |
loadEnvironment(java.lang.Object x)
load the current file (or class) into a new initial environment and return the resulting DynamicEnvironment. |
static boolean |
loadInit()
|
static void |
main(java.lang.String[] files)
The following steps are performed If an "init.scm" resource or file is found, it is loaded. |
static java.lang.Object[] |
makeArgArray(Procedure p,
Pair args)
Convert a list of arguments into an array expected by the procedure. |
static InputPort |
open(java.lang.String name)
|
static InputPort |
openFile(java.lang.String name)
|
static InputPort |
openResource(java.lang.String name)
|
static InputPort |
openURL(java.lang.String url)
|
static Evaluator |
popEvaluator()
|
static void |
pushEvaluator(Evaluator i)
|
static void |
readEvalWriteLoop(java.lang.String prompt)
Prompt, read, eval, and write the result. |
static void |
runJscheme()
|
static void |
setError(java.io.PrintWriter error)
|
static boolean |
setExit(boolean exit)
|
static void |
setInput(InputPort input)
|
static void |
setOutput(java.io.PrintWriter output)
|
static java.lang.Object |
toBody(java.lang.Object exps)
Handle internal defines, and convert a list of exps to a single exp. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
public static java.lang.String[] ARGS
public static Symbol EVAL
public static Symbol LOAD
| Constructor Detail |
public Scheme()
| Method Detail |
public static boolean setExit(boolean exit)
public static InputPort getInput()
public static void setInput(InputPort input)
public static java.io.PrintWriter getOutput()
public static void setOutput(java.io.PrintWriter output)
public static java.io.PrintWriter getError()
public static void setError(java.io.PrintWriter error)
public static boolean isInterruptable()
public static void interruptCheck()
public static Evaluator currentEvaluator()
public static void pushEvaluator(Evaluator i)
public static Evaluator popEvaluator()
public static DynamicEnvironment getInteractionEnvironment()
public static DynamicEnvironment getNullEnvironment()
public static DynamicEnvironment getInitialEnvironment()
public static void main(java.lang.String[] files)
By putting the init.scm in a .jar file with the manifest entry:
Main-Class: jsint.Schemeyou get scriptable jar files that can be invoked by:
java -jar name.jarThis idea was suggested by David May david@davudsplace.net.
By adding command line arguments or providing your own init.scm file you can override the init.scm file in the .jar to tailor your application.
public static void defaultMain(java.lang.String[] files)
public static void runJscheme()
public static void readEvalWriteLoop(java.lang.String prompt)
public static boolean loadInit()
public static java.lang.Object load(java.lang.Object fileName)
public static DynamicEnvironment loadEnvironment(java.lang.Object x)
public static java.lang.Boolean environmentImport(java.lang.Object x,
java.lang.Object prefix)
public static java.lang.Boolean languageImport(java.lang.Object x)
public static InputPort open(java.lang.String name)
public static InputPort openURL(java.lang.String url)
public static InputPort openFile(java.lang.String name)
public static InputPort openResource(java.lang.String name)
public static java.lang.Object load(InputPort in)
public static java.lang.Object evalToplevel(java.lang.Object x,
DynamicEnvironment env)
public static java.lang.Object eval(java.lang.Object x)
public static java.lang.Object eval(java.lang.Object x,
java.lang.Object env)
public static java.lang.Object analyze(java.lang.Object x,
DynamicEnvironment dynamicEnv,
LexicalEnvironment lexenv)
public static java.lang.Object execute(java.lang.Object x,
LexicalEnvironment lexenv)
public static final java.lang.Object[] makeArgArray(Procedure p,
Pair args)
public static java.lang.Object toBody(java.lang.Object exps)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||