SeExpr is a simple expression language that we use to provide artistic control and customization to our core software. We use it for procedural geometry synthesis, image synthesis, simulation control, and much more.
C++ Yacc CMake Python C Lex Other
Latest commit 176c8eb Nov 3, 2016 @jberlin jberlin committed on GitHub Merge pull request #67 from davvid/generalize-build
Generalize build

For info on using new v3 features and porting your code, see:

SeExpr - An embeddable expression evaluation engine

Super impatient CMake building and installing guide

$ git clone
$ cd SeExpr
$ mkdir build
$ cd build
$ cmake ../
$ make doc      # optional make documentation
$ make install

You can try the test application asciiGraph which is a simple function grapher... e.g.

./asciiGraph "x^3-8*x"

Getting started

Examining the demo applications in src/demo is a great way to see some usage examples of the library. The basic strategy is to subclass the Expression class and implement the methods that describe what extra functions and variables your expression evaluation will need

Be sure to check out the doxygen pages for an API overview: (for older documentation)

Source code overview

   SeExpr/   Library code
   ui/       User Interface components for editing
   demos/    Demo Applications
   tests/    Regression Tests
   doc/      Doxygen generation

SeExpr Developers

  • Janet Berlin
  • Brent Burley
  • Lawrence Chai
  • Andrew Selle
  • Dan Teece
  • Tom Thompson

Walt Disney Animation Studios