Hacker News new | ask | show | jobs
by Gabriel439 3178 days ago
The primary distinction from a dynamic language is that Dhall is typed, total, and does not permit arbitrary effects (only importing other code is allowed), so it's safe to evaluate arbitrary remote code and it's also safe to use Dhall expressions to configure programs since they consist of nothing but pure functional logic. Dhall is first and foremost a programmable configuration language so safety is one of the primary language requirements
1 comments

Sounds a bit like safe tcl, a subset of tcl you could embed into your own program for untrusted scripts.

https://www.tcl.tk/software/plugin/safetcl.html

Minus the type safety, functional approach, etc...but similar in purpose.

Yes, that's a good analogy

However, I think the more important thing I'm trying to fix is how we compose code. The Rube-Goldberg machine the post refers to is the complicated mechanisms we have to deal with for combining code fragments. Reading in a value shouldn't be any different from reading in code and shouldn't require any more overhead than just copy-and-pasting a URL into your program