On Thursday, May 30, 2019 at 1:24:55 PM UTC-4, L Godioleskky wrote: > > one of the annoying things you have to deal with as a team member is being > assigned an "update" of code written by someone who no longer works for the > team. What makes this annoying is possibility of running into code sections > that contain "crytic" statements that require lots of effort to understand. > After looking at the link you provided my input, based on dealing with > cryptic C++ is: Go should not allow cryptic syntax. > Generics are useful except when their syntax becomes cryptic
> w > > On Thursday, May 30, 2019 at 12:29:03 PM UTC-4, Michal Strba wrote: >> >> Hi Gophers! :) >> >> I've been thinking about generics in Go 2 ever since the original >> contracts proposal and few days ago, ideas finally clicked. One of the main >> things about this proposal is that it deliberately omits the ability to >> restrict the set of types a function can work with. This is a limitation, >> but I hope to convince you that we can still do a vast majority of the >> things we were missing, when we were missing generics. >> >> I'd love to share my proposal with you and engage in a good faith >> conversation. >> >> Link to the proposal. >> <https://gist.github.com/faiface/e5f035f46e88e96231c670abf8cab63f> >> >> Here's what the proposal covers: >> >> 1. Syntax of a new gen keyword. >> 2. Generic functions. >> 3. Unnamed generic arguments (a.k.a. a way to gve a type to the built-in >> new function). >> 4. Semantics of generic values (ability to use them as map keys, ...). >> 5. Generic array lengths. >> 6. Reflection and interface{}. >> 7. Generic types (with two examples: List and Matrix). >> 8. Generic methods and their limitations due to reflection. >> 9. Generic interfaces. >> 10. List of things this proposal can't do. >> >> Thanks, >> faiface >> > -- 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/168e423b-eb56-4c2c-8222-567756146dbc%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.