
Known current bugs:

* longs are not always converted to double when needed
    - this is an instance of the general case that only certain kinds of
        math errors are detected.
    Errors that ARE detected include:
        - syntax errors
        - dimension mismatches (time + mass, sqrt(volume), sin(mass))
        - type mismatches (0.5!)
        - division by zero (but division underflow is not detected)
        - overflow in computing n factorial
    Errors that should USUALY be detected include:
        - out of memory
        - I/O errors
    Errors that are NOT detected include:
        - overflow, underflow, loss of precision and so on, for all
            types and operations
        - errors in the trig/transcendental library functions, including
            sqrt(-n), tan(90 degrees), log(0)
        - infinite recursion in user defined functions

* Fractional hex numbers don't work right

