forceOfHabit
Aug 22, 2017 · 1 min read

I’m a complete neophyte when it comes to this topic, but I think you underestimate how appropriate it is to designate computer “languages” as language.

You mention the trivium: Grammar, Logic, Rhetoric. Computer languages do indeed have all these properties. Grammer (“the study of language”) in this context (usually called Syntax in computer science) is simply the rules for forming correct (parseable) statements. Logic (“the study of forming sound arguments”) is about how to assemble a bunch of correct statements to make the computer perform some task . Rhetoric (“the study of forming persuasive arguments”) is arguably the study of program correctness (how do we know the program reliably performs the specified task on any possible input). Admittedly, for the last, we have typically stepped outside computer languages and into mathematics and traditional language, but there are trends to embed tools (or even design languages) to make program correctness directly addressable within the computer language itself. (And there are trends to recast the foundations of mathematics in a form more suitable for formalizing proof/program correctness.)

So, I submit, computer languages are in fact languages as you describe them, albeit with a very narrow focus, and in their infancy with much more growth and development in store.

(For instance, it is telling that the sort of paradoxes that bedevil natural languages (the Liar’s Paradox: “This sentence is false.”) and mathematics (Godel’s Incompleteness Theorem) also beset computer languages (the Halting Problem).)

)
    forceOfHabit

    Written by

    In time of flood, the well is never deep enough.