A similar language is Joker (https://github.com/candid82/joker), Go based, Clojure syntax. I've been using it for years as a general purpose scripting language and Clojure code linter and formatter - it's exceptional.
It doesn't integrate non-Joker Go code as far as I know.
Hint: the "interactive" demos are scrollable by dragging the bottom. (Sadly, you don't have any access to the terminal window's scrollbar, so you can't just scroll to the end of the "video.") I still think a non-animated transcript of a terminal session is better.
Maybe that my wording is off. This are not interactive demos, but more like demos of interactive use in console ... "animated interaction demos". These use asciinema, which is a nice tool and I think it's good to display interesting interactions compactly. But yes, for deeper look it moves too fast for one, so something what you describe could be better. I could have these animations for getting attention and then linking to transcripted, detailed document. Do you have any example of a good way of displaying such console session statically?
REBOL-family languages (including Logo) don't eagerly evaluate expressions like a Lisp, and therefore can use ordinary functions/operators in places that would otherwise need to be special forms and/or macros.
Exactly ... I tried to explain this here: https://ryelang.org/meet_rye/basics/if_either/
So, you're passing around textual source code chunks? How do you force evaluation?
Exactly ... I tried to explain this here: https://ryelang.org/meet_rye/basics/if_either/
So, you're passing around textual source code chunks? How do you force evaluation? I don't find this impossible. I have seen this in John Shutt's Kernel, for example. https://ftp.cs.wpi.edu/pub/techreports/pdf/05-07.pdf But I'm just not seeing the mechanisms I expect for such a language.
Not strings; token lists.
You can evaluate lists with `do`, or through functions which in turn use `do` on their arguments.