Post Reply 
HP Prime: a student's view
09-01-2021, 10:43 PM
Post: #24
RE: HP Prime: a student's view
(08-30-2021 01:11 AM)Liam Hays Wrote:  This post is about my experiences so far with the Prime. It is quite long. TL;DR: nerd kid likes the Prime.

lots of good stuff (here, and later)

My first calculator was a Casio fx-9750G PLUS, a ’90s graphing calculator which is programmed in a rudimentary BASIC. Despite its shortcomings, I had a shocking amount of fun learning how to program that thing.

Hopefully the Prime can provide an environment where kids (and adults) can have some fun with mathematics and with programming.

Quote:
On the side of the apps, the Function, Advanced Graphing, and Graph 3D apps are incredible.

Thanks! Big Grin (I’m the author of those apps.) The overall design language follows that of earlier HP calcs (the 39gII, in particular, which is where the Function implementation began; the UI for the 39gII follows that of the 39gs…)

Quote:I’m not sure I’ll ever go back to low-res, monochrome plotting ever again. Functions appear instantly instead of after many seconds, zooming and panning is easy and intuitive (pinch to zoom is wonderful), and everything is just so fast.

Thanks! Big Grin Of course, the hardware (CPU, touchscreen, etc.) are a requirement for making it all work…

I’m not sure if you noticed, but you can effect purely vertical / horizontal stretches (in Function and Advanced Graphing) if you carefully position and move your fingers when pinching.

There’s many little details in implementation. For example, the scaling code I implemented that is used during pinch-to-zoom (in Function and Advanced Graphing) comes in two variants (when the scaling factor is less than 1): one for light mode and one for dark mode. Why? So that thin lines don’t get hidden by quick scaled rendering (lost due to aliasing). You could, for example, try plotting |Y-1|>.1 in Advanced Graphing (with default Plot Setup settings, so that there is a one-pixel-thick line not in the solution set) and then pinching inward: the one-pixel-thick line will come and go as you pinch. (You can also see this sort of things in Microsoft Word on the desktop etc., at least with fairly recent versions.)

Quote:Whereas even a simple line on the HP 48 takes ten seconds to draw, the Prime renders it as soon as the Plot button is pressed.

There’s some further improvements I’d like to make to the code to make plotting even faster… But this would mainly be noticeable with less-common more-difficult plotting tasks. (Perhaps less so with Graph 3D, where typical plots involve more computation.)

One of the things that Function and Advanced Graphing do to speed up plotting is use byte code evaluators for expression evaluation (only for simple expressions in Function; the full PPL evaluator is used for expressions beyond the BCD byte code evaluator’s abilities). Things like common subexpressions are recognized by the expression -> byte code compiler (if F1(X)=SIN(X)+SIN(X), an evaluation of F1 for a particular X value only calculates SIN(X) once).

Quote:Advanced Graphing is just as useful as Function, usually because I’m lazy and don’t want to convert general form into slope-intercept form Smile.

If you haven’t seen the graph gallery in the Advanced Graphing app, I’ve put some fun example plots in there. (Available via the physical Menu key while in a Plot view of the Advanced Graphing app.)

Quote:
But first, a thought I had a while ago. RPL is fun, it is powerful, and it is versatile. It is also obsolete. It was designed for systems far less powerful than what are available today…

In a similar vein of “…a thought I had…” — it’s not just many of the posters here, but also a good chunk of the software developers of the Prime, that grew up with simpler machines. My second home computer was a Jupiter Ace (whose default programming environment was Forth). We had fun with those simpler machines!

Quote:
I have numerous other comments and feature requests for Python, and I’ll probably put those in a separate thread so there can be actual discussion (and so this post isn’t horribly long and convoluted).

I’ve been looking through the Prime’s UI a bit over the past couple of weeks and have been thinking of possible improvements / refinements (things in the Python editor that jumped to mind immediately for me were syntax colouring, indent guides, improved help support, …)

To be clear: none of my comments here should be taken as any sort of statement regarding future releases…
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
HP Prime: a student's view - Liam Hays - 08-30-2021, 01:11 AM
RE: HP Prime: a student's view - Liam Hays - 08-31-2021, 01:30 AM
RE: HP Prime: a student's view - parisse - 08-31-2021, 07:30 PM
RE: HP Prime: a student's view - Liam Hays - 08-31-2021, 11:20 PM
RE: HP Prime: a student's view - jte - 09-01-2021 10:43 PM
RE: HP Prime: a student's view - Liam Hays - 09-03-2021, 01:31 AM
RE: HP Prime: a student's view - jte - 09-05-2021, 03:44 PM
RE: HP Prime: a student's view - jte - 09-05-2021, 06:16 AM
RE: HP Prime: a student's view - pinkman - 09-03-2021, 09:30 PM
RE: HP Prime: a student's view - Liam Hays - 09-04-2021, 01:30 AM
RE: HP Prime: a student's view - Liam Hays - 09-04-2021, 04:49 PM
RE: HP Prime: a student's view - ijabbott - 09-04-2021, 08:44 AM



User(s) browsing this thread: 1 Guest(s)