Expression evaluator

Is a mathematical function parser. It allows you to calculate a value given an expression in string form. It supports the following
operators and functions:

    +       Addition
    -
       Substraction
    *
       Multiplication
    /
       Division
    ^
       Exponential (only positive numbers for the base)
    (
       Open parenthesis
    )
       Close parenthesis
   MOD
      MOD operator.  Integers only (if used with floating
            point numbers, it will round the values to integers)

   ABS
      (Range: -1e4932..1e4932)
   ATAN
     (Range: -1e4932..1e4932)
   COS
      (Range: -1e18..1e18)
   EXP
      (Range: -11356..11356)
   LN
       (Range: 0..1e4932)
   ROUND
    (Range: -1e9..1e9)
   SIN
      (Range: -1e18..1e18)
   SQRT
     (Range: 0..1e4932)
   SQR
      (Range: -1e2446..1e2446)
   TRUNC
    (Range: -1e9..1e9)