3 ms·
Access to eval and a generic recursive data type as internal structure means the language is closed on itself, can introspect, manipulate, create more through t
by agumonkey 2y ago
Access to eval and a generic recursive data type as internal structure means the language is closed on itself, can introspect, manipulate, create more through the same means it's programmed (see norvig lispy with python [lists] instead of parens)
- kazinator 2y agoBut eval is opaque; it implements a particular dialect and that'w what you get when you recurse into it. It looks like Autology provides a way to customize the dialect that eval will process recursively. Interpreter extensions that handle subexpressions via eval will then work in the context of the altered dialect (that being provided by a parent interpreter extension itself).
- agumonkey 2y agoFair point, but the usual eval core is so small that I couldn't see it being split apart, and then layering new traits can still be done (still opaque though).