Sometimes, you can't know ahead-of-time what an expression will look like, or you want those expressions to be configurable. Perhaps you've got a set of data running through your application, and you want to allow your users to specify some validations to run on it before committing it to a database. Or maybe you've written a monitoring framework which is capable of gathering a bunch of metrics, then evaluating a few expressions to see if any metrics should be alerted upon, but the conditions for alerting are different for each monitor. A lot of people wind up writing their own half-baked style of evaluation language that fits their needs but isn't complete. Or they wind up baking the expression into the actual executable, even if they know it's subject to change. These strategies may work, but they take time to implement, time for users to learn, and induce technical debt as requirements change.

Features

  • Provides support for evaluating arbitrary C-like artithmetic/string expressions
  • You may have cases where you want to call a function on a parameter during execution of the expression
  • Functions can accept any number of arguments
  • Some operators don't make sense when used with some types
  • You can also do date parsing, though the formats are somewhat limited
  • Expressions are parsed once, and can be re-used multiple times

Project Samples

Project Activity

See All Activity >

Categories

Software Testing

License

MIT License

Follow govaluate

govaluate Web Site

Other Useful Business Software
MongoDB Atlas runs apps anywhere Icon
MongoDB Atlas runs apps anywhere

Deploy in 115+ regions with the modern database for every enterprise.

MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
Start Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of govaluate!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Programming Language

Go

Related Categories

Go Software Testing Tool

Registered

2023-01-18