Attempto Controlled English
Starting in about the 11th century, philosophers in India of the Navya-Nyāya school adopted a similar artificial dialect of Sanskrit, to make their arguments precise. Of course there was no computer implementation backing the formalization, but the goal was similar: to have a language that remains a subset of natural language and (somewhat) intelligible to a typical educated person, yet is a formal language with unambiguous meanings. A good description of this language is in a couple of papers by Ganeri [1].<p>For example (taken from [2]), instead of saying the straightforward “Caitra goes to the village”, if you wished to be <i>really</i> precise you might say “There is an activity which leads to a connection-activity which has as Agent no one other than Caitra, specified by singularity, [which] is taking place in the present and which has as Object something not different from ‘village’.” (Sounds a bit less unnatural and also a bit less confusing in Sanskrit.)<p>> [Attempto Controlled English] can serve as knowledge representation…<p>It is not clear to me when this project started, but there was a 1985 article pointing out the Navya-Nyāya/“Shastric Sanskrit” language as an example of something that is both (somewhat) a natural language and (somewhat) usable for knowledge representation [2]. In its own way that article became, in popular culture in some circles in India, the source of various unfounded memes about Sanskrit being good for computers, or more absurd claims (<a href="https://news.ycombinator.com/item?id=14295285" rel="nofollow">https://news.ycombinator.com/item?id=14295285</a>).<p>[1]: <a href="http://www.columbia.edu/itc/mealac/pollock/sks/papers/Ganeri(Matilal%20vol).pdf" rel="nofollow">http://www.columbia.edu/itc/mealac/pollock/sks/papers/Ganeri...</a> (can't find a link to the second paper now)<p>[2]: <a href="https://www.aaai.org/ojs/index.php/aimagazine/article/view/466" rel="nofollow">https://www.aaai.org/ojs/index.php/aimagazine/article/view/4...</a>