All Packages Class Hierarchy This Package Previous Next Index
Class Jaja.Symbol
java.lang.Object
|
+----Jaja.Jaja
|
+----Jaja.Value
|
+----Jaja.Symbol
- public class Symbol
- extends Value
This is the class of Scheme symbols. It is refined into special
symbols to recognize special form operators and give them an
appropriate behavior.
-
beginq
-
-
ifq
- Predefined symbols
if
, begin
are
reserved keywords in Java, set!
is not a legal
identifier: they're all suffixed with q
.
-
lambda
-
-
monitor
-
-
quasiquote
-
-
quote
-
-
setq
-
-
symbol_eval
-
-
symbol_eval_in_expansion_world
-
-
symbol_expand
-
-
symbol_load
-
-
uninitialized_let
-
-
unquote
-
-
unquote_splicing
-
-
Symbol(String)
- Constructor and creators (protected since used by inheriting
classes).
-
create(MutableString)
-
-
create(String)
-
-
eval(Environment, WorldAble)
- r contains the lexical current environment while interp contains
the global environment (and other parameters).
-
oblist()
- Debugging: return the list of all interned (ie already seen)
symbols.
-
toString()
- Convert a Value into a human-readable Java String.
ifq
public static final Symbol ifq
- Predefined symbols
if
, begin
are
reserved keywords in Java, set!
is not a legal
identifier: they're all suffixed with q
. If you add
another special form, you should register its name here. It is
necessary to create these special symbols now to avoid them being
recreated as regular symbols when read.
quote
public static final Symbol quote
beginq
public static final Symbol beginq
setq
public static final Symbol setq
lambda
public static final Symbol lambda
uninitialized_let
public static final Symbol uninitialized_let
monitor
public static final Symbol monitor
quasiquote
public static final Symbol quasiquote
unquote
public static final Symbol unquote
unquote_splicing
public static final Symbol unquote_splicing
symbol_eval
public static final Symbol symbol_eval
symbol_load
public static final Symbol symbol_load
symbol_expand
public static final Symbol symbol_expand
symbol_eval_in_expansion_world
public static final Symbol symbol_eval_in_expansion_world
Symbol
protected Symbol(String n)
- Constructor and creators (protected since used by inheriting
classes). Only the creator should be used to create symbols.
To use the intern methods of String does not seem useful.
create
public static Symbol create(MutableString str)
create
public static Symbol create(String s)
toString
public String toString()
- Convert a Value into a human-readable Java String.
- Overrides:
- toString in class Value
eval
public Value eval(Environment r,
WorldAble world)
- r contains the lexical current environment while interp contains
the global environment (and other parameters).
- Overrides:
- eval in class Value
oblist
public static Value oblist()
- Debugging: return the list of all interned (ie already seen)
symbols.
All Packages Class Hierarchy This Package Previous Next Index