Groups | Search | Server Info | Keyboard shortcuts | Login | Register
Groups > comp.compilers > #3089
| From | Kaz Kylheku <480-992-1380@kylheku.com> |
|---|---|
| Newsgroups | comp.compilers |
| Subject | Re: What programming languages are simply abstractions on top of another programming language? |
| Date | 2022-06-22 01:31 +0000 |
| Organization | A noiseless patient Spider |
| Message-ID | <22-06-067@comp.compilers> (permalink) |
| References | <22-06-047@comp.compilers> |
On 2022-06-18, Roger L Costello <costello@mitre.org> wrote: > Hi Folks, > > I am reading "Software Tools" by Kernighan and Plauger. One of the things that > I've learned is that Ratfor is a simple abstraction on top of Fortran. For > example, Ratfor provides a while loop. The while loop can be mechanically > converted to Fortran if-then and goto statements. Really cool! > > That got me to wondering, "What other programming languages are simply > abstractions on top of an existing programming language?" In the Ratfor spirit, in April 2022, I introduced a new one: cppawk. https://www.kylheku.com/cgit/cppawk/about/ Using the GNU C preprocessor, with C99 semantics, I managed to build, for instance, a loop macro that supports multiple clauses that combine for parallel or nested (cross product) iteration. Not only are there some userful predefined clauses, but they are user-definable. Even the Common Lisp LOOP macro deosn't have user-definable clauses. I made it possible in five #define statements. "LOL" :) There is a "Mock Lisp" data abstraction layer as well: cons cells are represented and such. Lists can be passed around and mapped over (if you have GNU Awk, which has indirect functions). cppawk provides a case statement which "compiles" either to a GNU Awk switch (nonstandard extension) or else portable constructs that work in other Awks. > /Roger > [The infamous m4 macrogenerator is used to build what are in effect new > languages like the sendmail configuration and GNU Autoconf. -John] GNU m4 underlies the Bison implementation: it's what glues together the parser skeleton templates with the grammar tables and whatnot to produce the output. -- TXR Programming Language: http://nongnu.org/txr Cygnal: Cygwin Native Application Library: http://kylheku.com/cygnal
Back to comp.compilers | Previous | Next — Previous in thread | Find similar
What programming languages are simply abstractions on top of another programming language? Roger L Costello <costello@mitre.org> - 2022-06-18 19:42 +0000
Re: What programming languages are simply abstractions on top of another programming language? gah4 <gah4@u.washington.edu> - 2022-06-20 15:36 -0700
What programming languages are simply abstractions on top of another programming language? Christopher F Clark <christopher.f.clark@compiler-resources.com> - 2022-06-21 23:34 +0300
Re: What programming languages are simply abstractions on top of another programming language? George Neuner <gneuner2@comcast.net> - 2022-06-21 15:10 -0400
Re: What programming languages are simply abstractions on top of another programming language? Kaz Kylheku <480-992-1380@kylheku.com> - 2022-06-22 01:31 +0000
csiph-web