-
_Difficulty: Advanced, requires familiarity with the concept of algebraic laws and testing them_
`Traversable` currently doesn't have any laws (only inherits those from `Covariant`). Figure out whi…
-
Here are some ideas for how-to articles/blog-posts/best practices that we should write at some point.
It might be nice to just write these as markdown files in this repo in the docs folder, so they…
-
```
(I remember reading about this on the list, but can't find any related issue)
The ability to wrap a constructor of Clazz with args A, B, ... to a FN would be great.
Maybe this depends on #55 (wr…
-
Imagine the following scenario:
```
counter x = do
_ Widget HTML T.Text
other str = do
e Widget v (a, [Maybe Widget v a])
```
which would return the result along with all the continua…
-
```
(I remember reading about this on the list, but can't find any related issue)
The ability to wrap a constructor of Clazz with args A, B, ... to a FN would be great.
Maybe this depends on #55 (wr…
-
Alternative has this distributivity law:
* `(f g) x == (f x) (g x)`
However, this law rules out a few instances, most notably "effectful" ones like Effect or Aff. For example:
```
f :: Af…
-
The `branch` operation can be implemented efficiently on its own, and `select` can be efficiently implemented in terms of it. This is similar to `Applicative`'s `()/liftA2` for which a more efficient …
-
```
simonpj@LHR-WD-22561:~/code/horde-ad$ rm -rf /home/simonpj/.cabal/packages/head.hackage.ghc.haskell.org
simonpj@LHR-WD-22561:~/code/horde-ad$ cabal update
Warning: No mirrors found for https://…
-
Consider the following example (the use of submodules is not important, it is just easier to work with a single file):
```crytpol
submodule F where
parameter type n: #
f: [n] -> [n]
f x = x…
-
Just a second overloaded version of each function that takes a curried lambda. The second version just takes the uncurried lambda instead of the curried one (like F2, F3, etc.).
This makes it possibl…