Angle brackets are only problematic in expressions in the bodies of
functions when specializing a function or a type, right? They are not
problematic in signatures and type definitions.
What about using a dot when specializing in bodies?
func zero<T>() T {
var z T
return z
}
func main() {
x := zero.<int>() // requires a dot
}
This is less weird than it looks, because Go already uses a dot for type
assertions and this is a similar thing.
On Wed, 15 Jul 2020 at 05:39 Ian Lance Taylor <[email protected]> wrote:
> On Tue, Jul 14, 2020 at 8:31 PM <[email protected]> wrote:
> >
> > One way to distinguish between type A[N] E and type A [N]E is to be more
> space-sensitive and, for example, disallow whitespace between a type name
> and the opening square bracket when it signifies type parameters.
>
> I would be extremely reluctant to make the syntax depend on invisible
> whitespace. The syntax already depends on line breaks, but at least
> line breaks are very visible. Spacing within a line can be hard to
> see and it would be quite easy to make mistakes.
>
> Ian
>
--
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 [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/golang-nuts/CAO6k0uuAqy2kgvEWYL%2BRxhMgjW7rQi8pCaORuaauSWjmb_Mq%2BA%40mail.gmail.com.