org.kiama.example

lambda2

package lambda2

Visibility
  1. Public
  2. All

Type Members

  1. trait EagerSubst extends ReduceSubst

    Eager evaluation of lambda calculus with term-level substitution and arithmetic operations.

  2. class EagerSubstEvaluator extends EagerSubst

  3. trait Evaluator extends AnyRef

    Interface for a lambda2 evaluator.

  4. trait InnermostSubst extends ReduceSubst

    Evaluation of lambda calculus using a memoising innermost evaluation with term-level substitution and arithmetic operations.

  5. class InnermostSubstEvaluator extends ReduceSubst

  6. class LambdaTests extends Tests with Checkers with Parser

    Lambda calculus tests.

  7. trait LazySubst extends EagerSubst

    Evaluation of lambda calculus using lazy evaluation with term-level substitution and arithmetic operations.

  8. class LazySubstEvaluator extends LazySubst

  9. trait Par extends ReduceSubst

    Common rules for parallel evaluation methods.

  10. trait ParEagerSubst extends Par

    Eager evaluation of lambda calculus with parallel term-level substitution and arithmetic operations.

  11. class ParEagerSubstEvaluator extends ParEagerSubst

  12. trait ParLazy extends Par

    Lazy evaluation of lambda calculus with parallel term-level substitution and arithmetic operations.

  13. trait ParLazyShare extends ParLazy

    Lazy evaluation of lambda calculus with parallel term-level substitution and arithmetic operations, plus sharing of substituted terms.

  14. class ParLazyShareEvaluator extends ParLazyShare

  15. trait ParLazySubst extends Par

    Lazy evaluation of lambda calculus with parallel term-level substitution and arithmetic operations.

  16. class ParLazySubstEvaluator extends ParLazySubst

  17. trait ParLazyUpdate extends ParLazy

    Lazy evaluation of lambda calculus with parallel term-level substitution and arithmetic operations, plus sharing and update of substituted terms.

  18. class ParLazyUpdateEvaluator extends ParLazyUpdate

  19. trait Parser extends PositionedParserUtilities

    Parser to AST.

  20. trait Reduce extends RewritingEvaluator

    Evaluation of lambda calculus using global beta reduction with meta-level substitution and arithmetic operations.

  21. class ReduceEvaluator extends Reduce

  22. trait ReduceSubst extends Reduce

    Evaluation of lambda calculus using global beta reduction with term-level substitution and arithmetic operations.

  23. class ReduceSubstEvaluator extends ReduceSubst

  24. trait RewritingEvaluator extends Evaluator

    Interface for an individual rewriting-based lambda2 evaluator.

Value Members

  1. object AST

    A simple lambda calculus abstract syntax.

  2. object Analysis

    Analyses for typed lambda calculus expressions.

  3. object Evaluators

    Interface to switchable evaluators for the lambda2 language.

  4. object Lambda extends ParsingREPL[Exp] with Parser

    A simple typed lambda calculus read-eval-print-loop that offers choice from among multiple evaluation mechanisms.

  5. object PrettyPrinter extends PrettyPrinter

No Group