getSemigroup<S, A>  function 
 
- BaseSemigroup<S> semigroup
Returns a semigroup for the FunctionWrapper type, using a provided semigroup for the S type.
Implementation
BaseSemigroup<FunctionWrapper<S, A>> getSemigroup<S, A>(
    BaseSemigroup<S> semigroup) {
  return _FunctionSemigroup(semigroup);
}