[sugar] Education?

Andrew Clunis orospakr
Tue Mar 13 17:40:59 EDT 2007


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Don Hopkins wrote:
> PSIBER (PostScript Interactive Bug Eradication Routines) was an
> experimental approach I took to making a visual programming interface
> and interactive debugger for the PostScript interpreter in NeWS.
> 
> The idea wasn't to invent a new visual language, just to implement a
> faithful visual representation of how the language really is, with a
> direct manipulation interface for editing data and executing code. (With
> drag and drop, pie menus, tabbed windows, direct stack manipulation,
> scaled outlines, embedded editors, etc!)
> 
> PostScript is a lot like Lisp (in some ways more so than Python),
> because PostScript programs are simply executable arrays containing
> names, literals, primitive operators, nested arrays, etc.
> So a general purpose PostScript structure editor can explore and edit
> any PostScript program, or even a NeWS thread's state, dictionary stack,
> operand stack and execution stack, so it's a useful component of an
> interactive debugger.
> 
> Python AST trees might be a good way to translate back and forth between
> editable structures and Python code.
> Although (since Python ASTs weren't designed to be human editable) it
> might benefit from another layer of translation to pretty them up and
> digest them, so they can be easily edited.
> 
> I think it would be wonderful to have a visual interface that faithfully
> represented the full power and semantics of Python (without trying to
> put a "kid friendly" facade over it), so you could use it to examine and
> debug any running Python program.
> 
> Of course there's still a need for many different simple
> application-specific "kid friendly" visual languages, but when you drill
> down to real code, it's best to get the real thing (full access to
> everything Python can do, visually) instead of some annoying
> watered-down half-baked ersatz Python (like "safe python" in Zope, or
> smarty templates in PHP).
> 

All of that is *exactly* my thinking.

Develop uses AST to populate its own object model describing a Python
program, and it will serve as the basis for Develop providing a more
granular visual experience than just a module-wide editor buffer.

And yes, for now I am focusing on features that everyone can use, not
watered down candy-coating.

Still, I am open to ideas as to how Develop's visual editing should
work.  For now, I don't think it should get any more granuluar than the
method-level.

Although I must admit, I hadn't realised Postscript was Turing complete.

- --
Regards,
Andrew Clunis

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFF9xpjALkUMXSNow8RApToAKCb+7uV/sKJ3S/vBLTEVFQwDJpeWwCfSrX0
JVoUM33SbKADwb4cV/kz/0Q=
=cQ/J
-----END PGP SIGNATURE-----


More information about the Sugar-devel mailing list