Changes for version 0.24 - 2016-06-16

  • Adjust to recent Regexp::Grammars & perl, reenable tests because RG is no longer broken on recent perls. Module now works again and re-pass all its tests.
  • [Incompatible change] Interface now simplified. Remove compiler-/interpreter-specific methods on Language::Expr, e.g. perl(), js(), php() and replace with get_compiler() and get_interpreter(). Also remove eval() and compile(), please use the methods on appropriate compiler/interpreter object instead. Change case for Language::Expr::{Compiler,Interpreter}::*, now use all-small letters, e.g. perl, js, php.
  • [Removed] Remove PHP compiler support, will be provided in a separate dist Language-Expr-Compiler-php.

Documentation

Description of the Language::Expr language

Modules

Simple minilanguage for use in expression
Base class for Expr compilers
Compile Language::Expr expression to JavaScript
Compile Language::Expr expression to Perl
Role for Language::Expr::Compiler::*
Specification for Language::Expr interpreter/compiler
Base class for Language::Expr interpreters
A default interpreter for Language::Expr
Dummy interpreter for Language::Expr (used for testing)
Enumerate variables mentioned in Language::Expr expression
Role for Language::Expr::Interpreter::*
Evaluate Expr JavaScript code
Parse Language::Expr expression