Here is how it works....

each statement may result in the definition of a new object.

a=3
def b(x): return x

a is pickalble, b in unpickable. So a is serialized as part of
globals(). Objects that are defined an not pickable are re-evaluated
at every statement. That means every time you type one statement all
previous statements you ever typed in the shell which defined
unpickable objects  will be re-evaluated.

I have not checked whether this create problems with the order of
execution but it is a bit dirty for my taste. Yet it would a similar
trick would allow the web2py shell to run on GAE.

massimo



On Dec 20, 8:23 pm, mdipierro <[email protected]> wrote:
> This works and has source
>
> http://shell.appspot.com/
>
> On Dec 20, 8:22 pm, mdipierro <[email protected]> wrote:
>
> > It does not work for me. whatever I type the output is "...".
>
> > I do not know how they maintain a state. Many things like classes and
> > function definitions are not serializable.
>
> > On Dec 20, 6:21 pm, Bruno Rocha <[email protected]> wrote:
>
> > > This is running on GAE : languageshells.appspot.com
>
> > > I really want to know how to do something like this to web2py API.
>
> > > 2010/12/20 Bruno Rocha <[email protected]>
>
> > > > Python Shell for Chrome
>
> > > >https://chrome.google.com/webstore/detail/gdiimmpmdoofmahingpgabiikim...
>
> > > > Useful to test small code blocks.
>
> > > > (would be great to have an online web2py API for testing, I tried to 
> > > > host
> > > > an exposed web shell to GAE, bur fails)
>
> > > > <https://chrome.google.com/webstore/detail/gdiimmpmdoofmahingpgabiikim...>
> > > > --
>
> > > > Bruno Rocha
> > > >http://about.me/rochacbruno/bio
>
> > > --
>
> > > Bruno Rochahttp://about.me/rochacbruno/bio
>
>

Reply via email to