SyntaxMorph (was Re: About the new syntax)

Bijan Parsia bparsia at email.unc.edu
Fri Jun 9 03:49:43 UTC 2000


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.






More information about the Squeak-dev mailing list