XEALbc is a Mac OS X software that offers a graphical interface for the bc command line tool.
In terms of the kind of input that it accepts, users can enter anything from simple math such as "2+2" to complex, recursive functions like computing the exponent function. Users can also enter and display data in a variety of bases, from 2 to 16 for input and 2 to 2,147,483,6471 for output. This means that users can easily convert between arbitrary bases. For example, if a user would like to find out what hex "E7" is in binary, they just have to set their bases, type in E7, and hit enter.
XEALbc also allows users to compute values with as much or as little precision as desired. The bc variable "scale" can be set to a value between 0 and 2,147,483,6471. By using 0, users can emulate integer math, similar to what math in C/C++ is like when using integer values. Using a text edit interface enables users to enter their calculations, view the results, make minor modifications, and try again without having to re-enter large amounts of data.
XEALbc is fully programmable, Turing complete, and also has preprocessor access. Users can easily set up "what if" scenarios with variables and change the values of any pertinent variables and try again. They can also save files for later use and even write libraries of functions that can be used in other files with the preprocessor "#include" directive. The print command allows for strings and values to be interspersed, if the user desires prettier output.
The software is simple to use and allows users to enter a series of equations, one per line, and compute the result. The answers will appear in the output panel, one per line. If users want additional information on the uses of bc, including the math library, defining functions, and general syntax, they can access the help for bc ("bc Help" from the "Help" menu).
However, at this time, interactive features of bc (i.e., the 'read' function) are not supported. XEALbc has multiple documents and key features such as arbitrary precision math, multiple input bases, arbitrary output bases, simple interface, and full programmability.
Version 1.1.1: N/A