On Saturday, March 8, 2014 4:27:25 PM UTC-6, Andrew Barnert wrote:
So your goal is that if someone is a TI89 expert but a Python novice, they can easily port a function from their TI89 to Python (or maybe even write a TI89-like desktop calculator program) with your library? That doesn't seem too unreasonable of a goal.
Your points are all mostly valid, taking all assumptions into account. Some of these
folks actually have TI89's but don't really know how to use them yet. Some of them
have TI84+, or TI83, some TI Nspire... some others. Mostly the comparison between
the calc and python isn't the point. The point is using python to do the trig (or whatever)
and along the way introducing programming. Its just one use case that is not too
different than a thousand other "average" or naive user cases, where the folks are
still on the learning curve but need to be introduced to computers and computer
science as well as the maths. This will also be good for folks who know what they
are doing and will now be able to do it just a little more efficiently. For folks who
really know what they are doing spelling issues are not even a problem. So, we can
help newbie/naive users without impacting advanced users like yourself.
The bottom line is trying to eliminate as few surprises as possible, making the learning
curve as easy and fun as possible. The point is not to make a calculator; rather to
make a decimal floating point package for python that is flexible. Experienced users
can use it for all kinds of purposes, and newbies can use it too. The experts on this
list, like you, will have no problem using the package (if you want) and folks that are
brand new to python will be able to use it too.
At some point the decimal concepts will come up, and the decimal literal will come in
very handy then. For folks using 3.3.4 or below obviously the caveats are going to
need to be explained in the documentation... and my functions are going to need to
take in floats and do something meaningful with them, as you saw in the square root
routine. Its a little more hassle for me to code and maintain, but its less "surprise"
impact on users will be worth it (esp for young wanna bee naiveté types).