On an otherwise insignificant day last year, I was searching through the Google help files (for no particular reason) when I came upon the documentation for Google Calculator
. What it showed me was that the Google search bar, which I, and most other Internet users around the globe, have used countless times, actually supported a built-in calculator function. In other words, if you type "50 slugs*mi^2/hr^3/(A*ohm) in milliamps
," it actually shows you the answer as 40.5071535 milliamperes
Amazed, I decided that someone had
to make something like that for the calculator. If the calculator couldn't support Internet searches, at least I could code an automatic unit converter in TI-BASIC. Thus, I went on a coding rage, and managed in a month to make a 5 KB program that could take input such as "3 N*M INTO FT*LB" and display the answer as 3.68781075. Unfortunately, I could not figure out how to integrate division, parentheses, or other operations no matter how hard I tried, so I put it in "indefinite hold" mode, as I have done to so many other projects. And just like those other projects, I ended up deleting the whole thing to make room for something more practical
For no apparent reason, I decided to bring it up again, first by posting on a couple of calculator-related forums
. I was originally asking for help, since with all the other programs in development (which was why I decided to hold CyanIDE
), I didn't have much more time to devote to another major project, which I would have to start from scratch again. After realizing that this would probably be one of my more successful projects, I decided to go full-speed on the development of this program, now called Calcalca (because I was too lazy to come up with a more creative name).
The results amazed me. In one hour I had coded all that I worked on for a month last year, and two days later, all the functions that had stumped me a year ago were integrated. It's still a bit slow (taking 5 seconds for an average expression and ten for something a bit more complex), but overall, I'm satisfied with it.