3 ms·
Fine, but give me a program in any programming language, be it "text-based" or "purely graphical" and it's probably possible to translate it into a representati
by troymc 13y ago
Fine, but give me a program in any programming language, be it "text-based" or "purely graphical" and it's probably possible to translate it into a representation that's vice versa. (Problems arise when a representation is too abstract: ambiguity can occur.)
Program representations are like city maps. There's only one city, but there are many maps: the subway map, the map of post offices, the map of gas lines, the map of Wi-Fi coverage, and so on.
I will agree that different representations have different capabilities and use cases. However, text is also capable of great abstraction, e.g.
z2 = BesselJ(n, z1)
- mbrock 13y agoYou'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).
- nitrogen 13y agoDataflow languages (like the one I developed: http://www.nitrogenlogic.com/docs/palace/ http://www.nitrogenlogic.com/docs/palace/) seem like they would have a fairly straightforward mapping to/from a purely functional language like Lisp.
- mbrock 13y agoThat 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?
- deleted 13y ago[deleted]