C'Dent is a new Acmeist programming language for writing portable modules (2010)
cdent.org
cdent.org
> Haxe can build cross-platform
applications targeting JavaScript, C++,
C#, Java, JVM, Python, Lua, PHP, Flash,
and allows access to each platform's
native capabilities.
From https://haxe.org/Let me amend my comment from my earlier message, where I said:
>"In my opinion, C'Dent is worth studying, alongside QBE and LLVM..."
To now read:
In my opinion, C'Dent is worth studying, alongside QBE and LLVM and Shen (https://shenlanguage.org/) !
Anyway, great link!
Related: http://cdent.org/examples/hello-world/index.html
Note that of all of the "Hello World" programs in various languages -- it is my opinion that the C'Dent code at the end (because it is subsequently transpiled to all of the other languages) is --
a more universal abstract form for programs
(...than code in a given specific target language's native form.)
In my opinion, C'Dent is worth studying, alongside QBE and LLVM... (https://c9x.me/compile/doc/llvm.html)
advThanksance
* Galois connexions subsume, among other things, Dijkstra's weakest preconditions/strongest postconditions.
Also, I think that some of the next breakthroughs for AI might be as follows:
1) Given any Turing-complete computer programming language A, construct a translator to a higher-order intermediate representation, then from that higher-order intermediate representation, construct a translator to programming language B...
2) Do this for all known Turing-complete computer programming languages;
3) Do this for all known Mathematical categories, groups, lemmas, theories, etc., and other Mathematical "objects" (for lack of a better term!) -- in other words, create an intermediate data model "map" (analagous to an intermediate higher-order language used by a transpiler) -- between all of these things in all of Mathematics...
Category Theory -- seems like it would be "The next level up"...
(Note that I am speculating about most of this(!) -- I claim to be an idiot in [some/many/all] of these areas! <g>)
must match the original identically
(formatting aside -- and/or sent through a deterministic code formatter on both sides, pre and post...).
Otherwise there is something wrong (or potentially wrong!) -- in the transpiler and/or target language and/or the data model of the target language... and the tiniest error could potentially turn into something way bigger later if not addressed at that stage...
I am curious how it round-trips, too!
Anyway, excellent question!