here is a solution to what i described in previous.
The result of
func mustNotErr(f func() (, error)) func() () {}
is the transitivity of t -to> func (...) (..., *-*error)
mustNotErr takes in input
a func T with any inputs, and a *traling* error,
returns in output,
the func T *less* the trailing
so wise! thanks for those clarification.
I did not deeply understand why it is called an identity func, and why it
has to be this signature.
It seems so narrowed to a specific case, makes me unhappy.
Now, i realized that even if , for some specific cases, seems to solve
some situations,
it won
On Mon, Jul 17, 2017 at 11:07 AM wrote:
> does it make sense to consider a "value type of any type that carries out
> its input type" ?
>
Yes. This is called a "universal" and is related to the concept of
parametrization by J. Reynolds.
Your 'do' function is often called 'id' for the obvious re
in func do(i interface{}) interface{} (return i), do says nothing because
"interface{} says nothing",
from the caller pov, it looses information at the return call,
var x = "o"
do(x) // <- return lost the track it was a string
if you delegate that func to another func,
it can t says anything