Pippy and Calculate
Yoshiki Ohshima
yoshiki at squeakland.org
Wed Sep 5 14:21:05 EDT 2007
Hi, Chris,
> (I'm the Pippy author.)
(We didn't have much time to discuss with you while I was in
Cambridge two weeks ago...)
> > Imagine if Pippy has a button called "Print!", which would be
> > located right next to the "Run!" button. And, if "Print!" prints
> > out the results of running the program into the bottom pane, that
> > is pretty much all we need. (For the record, the workspace in
> > Etoys has been there from day one for this purpose.)
>
> This is a useful idea, thanks. At the moment, Pippy doesn't keep any
> variable/program state inbetween "Run!"s (each run is a new Python
> interpreter), so there is no way to do "Ans*2"-style calculations.
> It sounds like you want "Print!" to keep a single interpreter that
> reinterprets the source pane at each click.
I didn't think about that aspect, but keeping state will be useful.
> The first version of Pippy used a single Python interpreter that
> executed the program source code in this way, without losing state,
> but that makes it possible to write programs that will not run on a
> fresh interpreter later (as they refer to state that was generated
> as a result of code that no longer exists, or a previous run of the
> code), so I decided against keeping that.
Yeh, that can happen in a typical workspace programming. But in
Pippy's setting, it would not be much of a problem. "Keep" button can
store the state altogether into a journal entry.
> Oh! We could have an "example" in Pippy that, when run, gives you a
> Python interactive shell. That should work well; it gives you the
> mode you want (without requiring an extra button), and is useful in
> any case. I'll do that.
>
> I don't think Python's evaluations are useful as a calculator to
> a child, though. You would have to explain this:
>
> >>> 2+2
> 4
> >>> 3/4
> 0
>
> I would like to add a simple graphics screen to Pippy, but I don't
> intend it to get many more features past that -- I'd like to keep
> it at a simple introduction to input/output programming.
Yeah, I was aware of the division (/) problem (when I see the last
digit in Calculate falls off to the next line. It would be nice if
you can override the division operator...
> > We have a real problem of shortage of man-power, so replacing
> > smaller activities that take more time to maintain and document
> > with more powerful ones is probably a good thing.
>
> Just a note that Reinier Heeres is a volunteer, so isn't pulling OLPC
> man-power away from any other projects.
Well, a volunteer can certainly contribute one of OLPC projects,
right?
I now see that the timeframe and practical matters will probably
prevent us going to the nice merging point between these different
projects. However, I still contend that similarity is close enough.
So, for example Pippy doesn't have to be confined "this is a Python
thing" mind, but take advantage of similarity.
-- Yoshiki
More information about the Devel
mailing list