Computer Programming and Syntax
Screenshots
Euphoria, translated by Michael Fried and annotated by Bill Tilden, is the second book in the Theodoric Project. In this book, we have an idea how Euphoria may be used as a system to express various concepts in a language (a programming language). The language itself is an abstract one, based on syntax, grammar, and style. Grammar includes some interesting features like nominal and punctuation rules, and grammar has a large emphasis on the use of pronouns and adjectives as well as on how sentences are structured and connected. Tilden also has a good grasp of natural languages and shows how these grammatical rules can be used to express natural languages in programming language.While in college, I saw a paper on Euphoria written by Glauberman and Katz who claimed that the syntax of Euphoria was closely related to that of Coq. Glauberman and Katz go on to claim that their syntax is a superset of the semantics of Coq and that their model of syntax, i.e., a model of rapid development is more consistent with natural language than other models. They further claim that their syntax is strongly influenced by the model of rapid development employed by John McCarthy, although they admit that their syntax is not strictly natural. After reading a paper by Fried on syntax with a view to develop a grammar of natural languages, I disagreed with them; I felt that real progress had been made in the linguistics of syntax by Richard Barrow and John McCarthy. When they declined to publish the paper I submitted, I believe that Glauberman and Katz were right in claiming that they influenced the very development of syntax they claimed to favor.
The three books by Tilden all describe different models of syntax for languages using euphoria, and they all fit comfortably within a larger framework of ideas called program theory. This theory is concerned with how to formulate a grammatical structure for a language and how to analyze it grammatically using syntactic structures designed to be flexible enough to accommodate changes in the models of syntax used by speakers of the language. I think that there is an interesting connection between the claims of the authors concerning syntax and the use of syntax in computer programming. It seems that programmers using syntax may be prone to having program syntax euphoria, and that this may also lead to mistakes in their use of syntax, as they become used to having the desired results in their programs.