4 ms·
Is this some variant of Lisp's 'everything is data is code' paradigm? For metaprogramming, I think the ideas make a lot of sense. For bizapps in the 'real worl
by all2 1y ago
Is this some variant of Lisp's 'everything is data is code' paradigm?
For metaprogramming, I think the ideas make a lot of sense. For bizapps in the 'real world', where the rubber meets the road, I think a division of data and action make a lot of sense. For example, on my last three or four business apps I started with data models (all of the persistent state) and walked backwards into the application.
I think -- I might be wrong -- in Scheme they have 'lambda uplift' or something like that to denote various levels of meta-programming "applied", IE, some level of abstraction is "applied" or "compiled" and the code is expanded.
- cess11 1y agoMore immediately Scheme, many Lisps and Lisp like languages as well as e.g. Elixir has quote and unquote, which easily allows one to flip between execution and data modes. Lambda lifting is more of a compiler design technique.