MExpr

Finalmente, ho rilasciato la mia prima versione della libreria MExpr!

Una libreria C++ che analizza delle espressioni matematiche, traducendole da stringhe a strutture facilmente manipolabili. La libreria è stata realizzata utilizzando bison e flex. La valutazione viene fatta attraverso un Abstract Syntax Tree, navigandolo ricorsivamente. Se si necessita di valutare più volte la stessa espressione, ad esempio per disegnare una funzione cambiando solamente il valore di una variabile, Si può anche compilare l’espressione in bytecode; quest’ultimo utilizza una pila per valutare l’espressione, risultando molto performante. La libreria supporta le variabili e funzioni parametriche con un qualunque numero di parametri. Si possono definire funzioni con stesso nome ma con numero diverso di parametri, lasciando al parser il compito di gestire l’overloading delle funzioni. Inoltre supporta le moltiplicazioni implicite, permettendo di scrivere espressioni in maniera naturale come: “-3xy^2″. Mette anche a disposizione un set di funzioni standard prese dalla libreria math.h.

Guarda la pagina ufficiale