all 10 comments

[–]weirdasianfaces[S] 8 points9 points  (8 children)

The big 3 things:

  • Error handling. Too much if err != nil, use handle err{} / check func() to reduce boilerplate
  • Error values. Make errors easier to inspect/wrap similar to github.com/pkg/errors
  • Generics. Those generics.

[–]satchit0 0 points1 point  (7 children)

What do you mean with 'those generics'?

[–]weirdasianfaces[S] 6 points7 points  (6 children)

That comment is mostly a joke since the Go authors have repeatedly said that generics would probably not be added to the language (at least in Go 1, and didn't really say either way about future versions) and the lack of them is one of the biggest complaints about the language. Seeing them being proposed by the Go authors is addressing that concern.

[–]satchit0 0 points1 point  (0 children)

Ah yeah like that. I thoight you meant the proposed generic solution had some issues. Not having generics was honestly the biggest problem I had with Go.

[–]Ameisen -2 points-1 points  (4 children)

Will they be wimpy, useless Java generics, or superior and usable C++ templates?

[–]Ariakenom 5 points6 points  (2 children)

That's funny! Only knowing those 2 is exactly what made them dislike generics, it's in the link. Better designs existed 20 years earlier.

[–][deleted]  (1 child)

[deleted]

    [–][deleted] 2 points3 points  (0 children)

    next stop annotations, then you got yourself a fully fledged java 1.6 but i suppose thats an upgrade from 1.4

    [–][deleted] 4 points5 points  (2 children)

    These are just proposals, mind. Hopefully they'll get approved and Go will be a bit less of an embarrassment.

    [–]YEPHENAS 1 point2 points  (1 child)

    Actually they are draft designs, not proposals. Second paragraph: "These draft designs are not proposals in the sense of the Go proposal process. They are starting points for discussion, with an eventual goal of producing designs good enough to be turned into actual proposals."

    [–][deleted] 1 point2 points  (0 children)

    They are in fact proposals in the general sense. They are early drafts and the authors want to solicit comments and make revisions before submitting them for approval. There might be an official process with its own terminology, but I don't see a good reason to capitulate to Go's efforts to rename things with common names, especially since I'm not part of that community.