Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You're kind of stretching the definition of "language," though. Programming language grammars are defined textually.

Do you think, for example, that a (useful) pictorial representation of Haskell code can be derived simply from the language grammar?

Sure, the map is not the territory, but you can also say the language is itself the map, and the territory is something way more abstract, like "computation."

Perhaps you can take the semantics of Haskell and invent a graphical syntax for it, perhaps even strongly inspired by the textual syntax of Haskell. But it wouldn't be straightforward, and any obvious, straightforward attempt would probably be terrible.

In other words, I don't think it's obvious that there is a "deep structure" of programming languages that can be worked on directly in a wide variety of formats. Unless you count the AST as such a structure, in which case graphical programming is reduced to graphical tree manipulation (which admittedly is the path taken by many of these examples).



Dataflow languages (like the one I developed: http://www.nitrogenlogic.com/docs/palace/) seem like they would have a fairly straightforward mapping to/from a purely functional language like Lisp.


That looks cool!

By the way, the more I think about this, the less I seem to know even what a "language" is.

Is Lisp a language? No, it's a family of languages, but even Scheme is a language known for its minimal grammar and its infinite extensibility. A common critique says that one programmer can't understand another's Lisp code because there's such a great potential for redefinitions and domain-specific syntactic extensions. If Lisp has a slogan, it's "code is data." Is Lisp a meta-language, or even an anti-language?




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: