What happens if you do a survey on Mechanical Turk asking programmers what semantics they expect of their languages?
https://blog.brownplt.org/2017/07/06/crowd-pl-design.html has the answer! Direct link to PDF: https://cs.brown.edu/~sk/Publications/Papers/Published/tpk-crowdsource-lang-design/paper.pdf
Thread.
miniblog.
Related Posts
A really nice explanation of lisp semantics, using userland code!
For example, you can define let in terms of let* and vice versa.
@RenewedRebecca That's correct, but I was thinking that offering threading to a user might make them more tolerant of a slow interpreter.
For example, if I have an AST walker but provide Clojure semantics, users can hopefully get a big speedup by using all the cores in their application.
On teaching Haskell, and which parts of the semantics are tricky for newcomers: https://ciobaca.substack.com/p/pedagogical-downsides-of-haskell