Package gnu.expr

Supports Expression, and various related classes need to compile programming languages.

See:
          Description

Interface Summary
Inlineable  
TypeValue A Type or a Type expression.
 

Class Summary
AbstractScriptEngineFactory Abstract implementation of ScriptEngineFactory for any Kawa Language.
AccessExp A common super-type for ReferenceExpa and SetExp.
ApplicationMainSupport Run-time support for "main" method, inclding command-line arguments.
ApplyExp This class is used to represent "combination" or "application".
BeginExp This class represents a sequence of Expressions.
BindingInitializer  
BlockExp Class used to implement a block that can be exited.
BuiltinEnvironment An Environment containing the default bindings for the current Language.
CatchClause A "catch" clause of a "try-catch" form.
ChainLambdas Sets up the firstChild/nextSibling links of each LambdaExp.
CheckedTarget Same as StackTarget, but catch ClassCastException.
ClassExp  
ClassInitializer Cause a class value from a ClassExp to be initialized.
Compilation State for a single expression or module.
CompiledModule Representation of an interactive module after parsing and compiling.
ConditionalTarget This is the Target of a boolean expression, in a conditional context.
ConsumerTarget A Target which is some variable that implements gnu.lists.Consumer.
Declaration The static information associated with a local variable binding.
ErrorExp Class used to mark an erroneous expression
ExitExp Expression to exit a lexically surrounding block.
ExpExpVisitor<D> Specialization of ExpVisitor<R,D> to R=Expression.
Expression Abstract class for syntactic forms that evaluate to a value.
ExpVisitor<R,D> Class for doing a tree-visit over an Expression tree.
FindCapturedVars  
FindTailCalls A visitor that checks for tails-calls; also notes read/write/call accesses.
FluidLetExp Class used to implement "fluid-let" for Scheme and "let" for Emacs.
GenericProc A collection of MethodProcs; one is chosen at apply time.
IfExp This class represents a conditional.
IgnoreTarget  
Initializer A piece of code that needs to be added to , , or whatever.
InlineCalls The main Expression re-writing pass.
KawaConvert Override gnu.lists.Convert to use Kawa number and Char classes.
KawaScriptBindings An implementation of javax.script.Bindings that uses a SimpleEnvironment.
KawaScriptEngine  
Keyword  
LambdaExp Class used to implement Scheme lambda expressions.
LangExp A language-specific expression.
Language Contains various language-dependent methods.
LetExp Class used to implement "let" syntax (and variants) for Scheme.
Literal A Literal contains compile-time information about a constant.
LitTable Manages the literals of a Compilation.
ModuleBody Class for the dummy top-level function of a module.
ModuleContext Maps modules to module instances.
ModuleExp Class used to implement Scheme top-level environments.
ModuleInfo  
ModuleManager A database of known modules as represented by ModuleInfo.
ModuleMethod Call a specified method in in a ModuleBody.
ModuleSet The compiler generates extensions of this class.
ModuleWithContext  
NameLookup Manages the set of declarations "currently" in scope.
ObjectExp  
PairClassType A class type implemented as a pair of an interface and a class.
PrimProcedure A primitive Procedure implemented by a plain Java method.
ProcInitializer  
PushApply Re-arranges ApplyExp where the function is a LetExp or BeginExp.
QuoteExp An Expression that evaluates to a constant value.
ReferenceExp This class represents a variable reference (an identifier).
ResolveNames This resolves references to lexical Declarations.
ScopeExp Abstract class for expressions that add local variable bindings.
SetExp An Expression to set (bind) or define a new value to a named variable.
Special A class of special one-of-a-kind builtin values.
StackTarget  
Symbols Utility class containing various routines to manipulate Scheme symbols.
SynchronizedExp  
Target This represents where a compiler can put the result of an expression.
ThisExp Evaluates to the "this" implicit variable.
TryExp This class represents try/catch/finally.
 

Package gnu.expr Description

Supports Expression, and various related classes need to compile programming languages.

The exact set of classes in this package is still somewhat in flux.

License

See the file COPYING.

Author

Per Bothner <per@bothner.com>

Bugs and patches

Send them to per@bothner.com, or to the Kawa mailing list.