org.kiama.example

lambda2

package lambda2

Visibility
  1. Public
  2. All

Type Members

  1. class Analyser extends AnyRef

    Analyses for typed lambda calculus expressions.

  2. trait EagerSubst extends ReduceSubst

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

  3. class EagerSubstEvaluator extends EagerSubst

  4. trait Evaluator extends AnyRef

    Interface for a lambda2 evaluator.

  5. trait InnermostSubst extends ReduceSubst

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

  6. class InnermostSubstEvaluator extends ReduceSubst

  7. class LambdaConfig extends REPLConfig

    Configuration for the Lambda REPL.

  8. class LambdaTests extends RegexParserTests with SyntaxAnalyser

    Lambda calculus tests.

  9. trait LazySubst extends EagerSubst

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

  10. class LazySubstEvaluator extends LazySubst

  11. trait Par extends ReduceSubst

    Common rules for parallel evaluation methods.

  12. trait ParEagerSubst extends Par

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

  13. class ParEagerSubstEvaluator extends ParEagerSubst

  14. trait ParLazy extends Par

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

  15. trait ParLazyShare extends ParLazy

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

  16. class ParLazyShareEvaluator extends ParLazyShare

  17. trait ParLazySubst extends Par

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

  18. class ParLazySubstEvaluator extends ParLazySubst

  19. trait ParLazyUpdate extends ParLazy

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

  20. class ParLazyUpdateEvaluator extends ParLazyUpdate

  21. trait Reduce extends RewritingEvaluator

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

  22. class ReduceEvaluator extends Reduce

  23. trait ReduceSubst extends Reduce

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

  24. class ReduceSubstEvaluator extends ReduceSubst

  25. trait RewritingEvaluator extends Evaluator

    Interface for an individual rewriting-based lambda2 evaluator.

  26. trait SyntaxAnalyser extends PositionedParserUtilities

    Parser to abstract syntax for optionally typed lambda calculus.

Value Members

  1. object Evaluators

    Interface to switchable evaluators for the lambda2 language.

  2. object Lambda extends ParsingREPLWithConfig[Exp, LambdaConfig] with SyntaxAnalyser

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

  3. object LambdaTree

    A simple lambda calculus abstract syntax.

  4. object PrettyPrinter extends PrettyPrinter

Ungrouped