With all this fuss about new syntax, etc. it was to my very, very, very great pleasure to take another peek at Bob Arning's SyntaxMorph, which, alas seems to only work with simple methods in the latest 2.8 + Dan's alt syntax system.
It is still, however, wonderful and brilliant. And it seems espeically suited for learning the syntax. The shaded boxes are really quite neat. Indeed, this may prove an interesting waystation between tiles and regular Smalltalking.
A screenshot (which I couldn't seem to upload to the swiki) at: http://www.unc.edu/~bparsia/squeak/syntaxmorph.gif
A download: http://www.charm.net/~arning/SyntaxMorph.24Aug623pm.cs
(For those facinated by my psychohistory, it's actually pretty interesting how I came to remind myself of SyntaxMorph. When the alternative syntax came down from Dan, I starting thinking about how computer language notation pretty much derives from the conventions of Russell and Whiteheads *Principia Mathematica* (no surprise, given the influence of mathematical logic on computer science). This made me think of Frege, as anyone would, and, more significantly, of the notation of the Begriffsschrift (aka Concept Notion), which was two dimensional, and a real typographical bear at the time (late 1800s). But there are some aspects of it that seem superior to standard notions. Yes, Begriffshriftian formulas take up more space, but they also are hard to make ambiguous.
I then reflected that the "Visual" syntaxes I'm familiar will (espeically Prograph) essentially model electric circuts or other "flow" systems, and thus work well for dataflowy things. But Frege's notation was for representing propositions. And something inspired by it might prove quite feasible as an alternative programming syntax for non-dataflow languages. Frege's logic, while rudimentory, was quite powerful, with second-orderish features, a notion of objects and "fuctions", and so on.
For a quick peek at the syntax: http://www.thoralf.uwaterloo.ca/htdocs/scav/frege/frege.html
For a bit more and a longer article: http://plato.stanford.edu/entries/frege-logic/
Anyway, that's what distracted me most recently :))
Cheers, Bijan Parsia.
Update: If you *haven't* filed in the Colonless syntax framework, I'm thinking SyntaxMorph should work fine. Certianly the browsing. If you have, browsing is easy enough to fix (involves changing ParseNode>>addCommentToMorph: to use a DialectStream, email for fix if you don't want to figure it out; or if you want neither to fix it yourself, nor get a fix from me, just don't browse methods with comments ;)).
The DebugSyntaxMorph doesn't (yet) work with the syntax framework, and I have no idea, but no reason to think not, if it works in vanilla 2.8. It should! (Whaaa! I want to play with it!) From the comment in SyntaxMorph:
2. In the when used in the debugger, balloon text is used to show the value of variables as the cursor passes over them. There are also additions to the popup menus to inspect or explore these values.
-----
Whoa! That's *very* cool folks!
Unless Bob beat's me to it, maybe I get it working with the alt syntax. Then we can begin to send shivers of horror up Andrew's spine :)
Cheers, Bijan Parsia.
A screenshot (which I couldn't seem to upload to the swiki) at: http://www.unc.edu/~bparsia/squeak/syntaxmorph.gif
I have had problems with Scamper but none with Netscape. I think Mark said there was some problems with Explorer too.
Karl
squeak-dev@lists.squeakfoundation.org