clac (Command Line Advanced Calculator) evaluates mathematical expressions input via command line arguments or from stdin and writes the results to stdout. Unlike other command line calculators, clac has infix (natural order) expression syntax, is quite comfortable with complex numbers, defines a great many functions and constants by default, and allows easy definition of new user functions and constants using Python.
pyPEG is a quick and easy solution for creating a parser in Python programs. pyPEG uses a PEG language in Python data structures to parse, so it can be used dynamically to parse nearly every context free language. The output is a plain Python data structure called pyAST, or, as an alternative, XML.
Hoc, the High Order Calculator, is an interpreted language for floating-point calculations. Its most basic use is as a powerful and convenient calculator, interactively evaluating expressions such as 1+2*sin(0.7). But hoc is no ordinary calculator: It also lets you assign values to variables, define your own functions, and use loops, conditionals, and everything else you'd expect in a programming language.
PED is a dialogue management system that uses a probabilistic nested belief model to choose dialogue strategies. The dialogue system designer need only supply a set of plan rules to PED as a dialogue grammar with preconditions. Using this grammar, PED constructs game trees (like the one below) to represent the outcomes of the dialogue, so that a dialogue strategy can be chosen for the current turn in the dialogue. PED automatically maintains a belief model by a belief revision process that uses the observed acts in the dialogue. The game tree is evaluated in the context of this belief model. PED is efficient because it uses probabilistic estimates of belief rather than a plain logical belief model.
libeval is a simple arithmetic expression evaluator supporting addition (+), subtraction (-), multiplication (*), division (/), modulo division (\), exponentiation (^), sign change (+-), percentages (%), grouping and function calls (()), scalar numeric variables, and user defined functions. The evaluator and accompanying symbol table can be accessed from standard C code and are available in both static and shared libraries.
XMLMath is a program that evaluates mathematical, logical, or textual expressions described in XML and prints the result. The package supports declarations of variables, sub-routines, and XML-based libraries with formulas that can be included in new expression documents. Xmlmath can be used as a stand-alone program from the command-line, but can also be used as a library inside third-party applications.
BinaryParser is a class that serializes and unserializes binary data, making it possible to read and write binary data files for exchange with programs written in languages like C and Pascal. It is currently able to handle signed integers (small 8 bits, short 16 bits, int 32 bits), unsigned integers (byte 8 bits, word 16 bits, dword 32 bits) and floating point (IEEE754 float 32 bits and double 64 bits). The endianess of the binary value representation can be configured.
Scilab is a numerical computation system similiar to Matlab or Simulink. Scilab includes hundreds of mathematical functions, and programs from various languages (such as C or Fortran) can be added interactively. It has sophisticated data structures (including lists, polynomials, rational functions, and linear systems), an interpreter, and a high-level programming language. Scilab has been designed to be an open system where the user can define new data types and operations on these data types by using overloading. A number of toolboxes are available with the system.