Concepts are really not like Go-style interfaces

Concepts is a generic type. The type is made concrete at compile time and you 
will never be able to distinguish behavior at runtime between you different 
types

If you want to have interfaces, you should probably use them instead using one 
nimble or the other.

What your boilerplate does is that it declares a function that does nothing on 
any type, and let the compiler choose based on static types. It will not do 
what you want I believe.

I'd like something like `iface` to be included in the standard library. There 
are good reasons to use interfaces in the standard library, in particular I 
like the way Go IO streams can be converted to various different interfaces at 
runtime and allows `io.Copy` to avoid shuffling the data too much around using 
kernel zero-copy syscalls.

By the way I improved upon the yglukhov/iface in 
<https://github.com/mildred/iface>

Reply via email to