Skip to content

v1.16.1

Compare
Choose a tag to compare
@antonmedv antonmedv released this 18 Feb 09:18
· 68 commits to master since this release
3196510

Expr is a Go-centric expression language designed to deliver dynamic configurations with unparalleled accuracy,
safety, and speed.

program, err := expr.Compile(`now() - created_at < duration("24h")`)
output, err := expr.Run(program, env)

In this release:

  • Fixed recursive operator overloading bug (#548, #554)
  • Fixed AST printing of ?.[ operator (ffaec9e)
  • Fixed string literal slicing error (#543)
  • Compilation performance improvements (95084fb)
  • Improved functions call performance (ed89647)
  • Refactored groupBy() and sortBy() builtins (#562)
  • Added operator overloading with expr.Function() (#408)
  • Added concat() builtin (#565)
  • Added reverse() builtin (#553)
  • Added program.Locations() method (e53cefe)
  • Added optional array access array?.[42] (#550)
  • Added compiler optimization for jump opcodes (#545)
  • Added compiler optimization for boolean operations with all, any, one, none functions (#555)

Expr Editor

The Expr Editor is an embeddable code editor written in JavaScript with
full support of Expr language.

Expr Pro

Expr Pro is a set of extensions for Expr for advanced use cases. It includes
expressions explanation, performance profiling, and more.