Package gnu.expr

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

See:
          Description

Interface Summary
CanInline Inline an application, at the Expression level.
Inlineable  
TypeValue A Type or a Type expression.
 

Class Summary
AccessExp A common super-type for ReferenceExpa and SetExp.
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.
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.
Expression Abstract class for syntactic forms that evaluate to a value.
ExpWalker Class for doing a tree-walk over an Expression tree.
FindCapturedVars  
FindTailCalls Does setTailCall on ApplyExp's that are tail-calls.
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  
KawaConvert Override gnu.lists.Convert to use Kawa number and Char classes.
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.
ModuleExp Class used to implement Scheme top-level environments.
ModuleInfo  
ModuleMethod Call a specified method in in a ModuleBody.
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.
SeriesTarget The value in the result (as a sequence of values) is passed to a function.
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.
Undefined  
 

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.