3 ms·
There's an explanation in the earlier article (http://blog.plover.com/prog/haskell/monad-search.html http://blog.plover.com/prog/haskell/monad-search.html), but
by mjd 11y ago
There's an explanation in the earlier article (http://blog.plover.com/prog/haskell/monad-search.html http://blog.plover.com/prog/haskell/monad-search.html), but it's because the `bind`/`bd` function takes the solution arrays from its callees, and concatenates the arrays into one big array of solutions, which it then returns to its caller.
In the Python code I think this is built into the behavior of the `+=` operator.
In the Perl code it's part of the way the `map` call works; it combines what would be `concat . map` in Haskell.
- rogerallen 11y agoThanks for explaining and thanks for the post. It was helpful seeing an example of why you might want to use a monad.