Semigroupal
public protocol SemigroupalThe Semigroupal type class for a given type F can be seen as an abstraction over the cartesian product.
It defines the function product.
The product function for a given type F, A and B combines a Kind<F, A> and a Kind<F, B> into a Kind<F, (A, B)>.
This function guarantees compliance with the following laws:
Semigroupals are associative under the bijection f = (a,(b,c)) -> ((a,b),c) or f = ((a,b),c) -> (a,(b,c)).
Therefore, the following laws also apply:
f((a.product(b)).product(c)) == a.product(b.product(c))
f(a.product(b.product(c))) == (a.product(b)).product(c)
- 
                  
                  Multiplicatively combine F and F into F<(A, B)> DeclarationParametersxFirst factor. ySecond factor. Return ValueTupled result of combining the values provided by both arguments. 
 
             Install in Dash
              Install in Dash
             Semigroupal Protocol Reference
        Semigroupal Protocol Reference