Calculating programs (programs which behave like desktop calculators) are quite prevalent on UNIX systems. Some employ Reverse Polish Notation (RPN), and some use a more algebraic notation. Some are graphical, and some are text based.
The bc and dc programs have existed on UNIX for a long time. One important point of difference between these calculators, and those we've used on desktops, is that these calculators work in arbitrary precision. If you are unsure of how a program is handling a calculation in single precision (a bit more than 6 significant figures) or double precision (about 16 significant figures), you can set either bc or dc to go through the calculations with many more significant figures. Bc has the advantage of actually being a language, and hence programs can be written in a script, just like the shell.