-----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----- _______________________________________________ Sugar mailing list [email protected] http://mailman.laptop.org/mailman/listinfo/sugar
