Sic itur ad astra! I spent some time and tokens generating these C99 applications and libraries all in classical Latin: https://github.com/jdb19937/apotheca. They all build with this C99 compiler + arm64 assembler + linker toolchain https://github.com/jdb19937/ccc (CCC = 300) which is included. But my favorite one of these repo is the 100+ test cases https://github.com/jdb19937/corpus that I used to iterate the compiler to bootstrappability. Nota: README.md ignorandum est. Anglice scriptum est ad barbaros ineruditos pecunia emungendos, lege LEGEME.md.
How did you compose the Latin? It seems... not very classical both in word selection and grammar. For example,
/* Est c consonans (non vocalis, non spatium, non littera non-Latina)? */
seems a word-by-word translation of English words into Latin words ignoring the structure and syntax of classical Latin. Perhaps it ought to be something more like:
/* Estne c litera consonans (neque vocalis, neque spatium, neque litera linguae aliae)?
edit: On reflection, notes on the return values of boolean functions probably ought to be some sort of utrum ...an construction.
One way I felt the prerogative to influence it was in choice of vocabulary, for example "files" are plicae, non fasciculi, brevity FTW. I have a (private) CLAUDIUS.md file where I accumulated such guidance. Frankly I can't really tell where it lies on the spectrum of classical to vulgar, my memories of reading Cicero and Pliny have faded quite a bit, but I understand your point about the barbaric word order (next expeditio I'll take this into account). But it was still a worthwhile campaign in terms of refreshing that knowledge. Salve!
One thing he missed out on is using genders to represent variables of different types, having three `temp` variables with different names, comparators that take valueA, valueB et cetera.
6 comments