gilch
gilch
This looks relevant: https://en.wikibooks.org/wiki/Haskell/Continuation_passing_style
Clojure's core.async is implemented as macros, and doesn't even require threading. The threadless option seems to be implemented as a "virtual virtual machine" that can interpret every special form. Hissp...
The latest Hissp prelude defines an `Ensue` class that pretty much handles this. It's not quite as convenient as `yield` and `async` for simple cases, but it is a lot...
I've added the subsection numbers in my fork. I'll probably have the links working soon.
Some of the section numbers are written as x-x-x instead of x.x.x in the original. The Exercise references are also broken. This could take a while.
I made a pull request for the section links. I haven't attempted to fix the Exercise links.
> Flat is better than nested. --The Zen of Python. I'm OK with having a fairly large core, but it has to have things that actually get used a lot,...
> This is exasperated by `require` not being transitive I am reconsidering the current macro namespace implementation. hylang/hy#1416, we might be able to get transitivity by adding to the `__macros__`...
As for the limitations, in particular, `defshadowed` doesn't support any &-syntax, like `&rest` in its arguments list. It only works on simple templates. The function definition expands it in advance,...
Here's a candidate `apply` macro. ```Hy (defmacro apply [expr args &optional [kwargs {}]] `(~@(if (isinstance expr HyExpression) expr [expr]) #* ~args #** ~kwargs)) ``` Python's distinction between args and kwargs...