On Thu, Aug 13, 2020 at 7:35 PM, jimmy frasche <soapboxcic...@gmail.com>
wrote:

> If I have
>   func F[type E interface{}, S constraints.Slice[E]]() S
> are the following equivalent:
>   F[int, []int]
>   F[int]
>   F[[]int]
> or are only 2 of the 3 permissible? Does that change if I swap the
> type parameters?


>From the section Ian linked:

"When only some type arguments are passed, they are the arguments for the
first type parameters in the list."


On Thu, Aug 13, 2020 at 7:35 PM, jimmy frasche <soapboxcic...@gmail.com>
wrote:

> If I have
>   func F[type E interface{}, S constraints.Slice[E]]() S
> are the following equivalent:
>   F[int, []int]
>   F[int]
>   F[[]int]
> or are only 2 of the 3 permissible? Does that change if I swap the
> type parameters?
>
> On Thu, Aug 13, 2020 at 4:31 PM Michael Jones <michael.jo...@gmail.com>
> wrote:
> >
> > Yes, thank you. In intellectual shame I must say that I somehow
> understood that the generics needed to be "leaf" functions. Thank you for
> demonstrating my oversight. Happier now.
> >
> > Michael
> >
> > On Thu, Aug 13, 2020 at 3:47 PM Bakul Shah <ba...@iitbombay.org> wrote:
> >>
> >> On Aug 13, 2020, at 3:29 PM, Michael Jones <michael.jo...@gmail.com>
> wrote:
> >> >
> >> > The all-or-none aspect would be sidestepped if it were allowed to
> define "partial generics":
> >> >
> >> > func A (T1, T2) (...){....}
> >> >
> >> > func B(T)(...){ A(T,int)(...){...} }
> >> >
> >> > Allowing B to exist just means running the whole generic thing
> iteratively until no resolution is changed. If the fixed point still has
> generic types then the compilation is a failure, otherwise, a success.
> >>
> >> Do you mean something like this?
> https://go2goplay.golang.org/p/4I4y-dLC-Yp
> >>
> >> >
> >> > Seems useful to me. A generic balanced tree infrastructure could be
> "meta-instantiated" as a LLRB instance that still allows generic leaf types.
> >>
> >
> >
> > --
> > Michael T. Jones
> > michael.jo...@gmail.com
> >
> > --
> > You received this message because you are subscribed to the Google
> Groups "golang-nuts" group.
> > To unsubscribe from this group and stop receiving emails from it, send
> an email to golang-nuts+unsubscr...@googlegroups.com.
> > To view this discussion on the web visit
> https://groups.google.com/d/msgid/golang-nuts/CALoEmQxTgQdhS2x4MU%3D_FcwBAJ09D68XnNYOQxy5YV7%2B6QOi0w%40mail.gmail.com
> .
>
> --
> You received this message because you are subscribed to the Google Groups
> "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to golang-nuts+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/golang-nuts/CANG3jXJ60zyaBsYmvOSJdgX3J%3DaB0_Taz2SnuM31Rg3N0bx8mw%40mail.gmail.com
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/CANjmGJvdPHOC5Uw6DvSeZKXALNuQru_Uaod-cS05a7EAsG7XEw%40mail.gmail.com.

Reply via email to