Can someone explain why you wouldn’t use python or lua, or even just plain JS?
- purity (within bounds of the local filesystem state; no dynamically computed imports; no networking; no file writes)
- declarative, lazily evaluated
- override syntax (allowing for a balance between explicitly defined APIs and some level of monkeypatching)
- file-relative import syntax
- simple interpreter that's easily embeddable into tools (no modules, no interpreter path, no global configuration files, etc)Your JS/Python/Lua code could do plenty of non desirable stuff (infinite loop, download trojan from the internet...etc).
Dhall lang for example forbids all this, but still allow you to write simple functions to avoid repeat yourself.