Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

proposal: Go 2 review meeting minutes #33892

Open
griesemer opened this issue Aug 27, 2019 · 72 comments
Open

proposal: Go 2 review meeting minutes #33892

griesemer opened this issue Aug 27, 2019 · 72 comments

Comments

@griesemer
Copy link
Contributor

@griesemer griesemer commented Aug 27, 2019

The Go 2 proposal review group meets regularly (roughly weekly) to review pending Go 2 proposal issues and move them along in the proposal process.

Review consists primarily of checking that discussion is ongoing, commenting on issues to move discussion along, summarizing long discussions, CC’ing experts, and accepting or closing proposals when the discussion on the GitHub issue has reached a clear consensus about the outcome.

Review also includes closing proposals that are untenable (for example, because the changes are sufficiently backwards-incompatible even after allowing for significant changes to the language as part of the Go 2 effort, or violate key design goals of the language or packages).

This meta-issue records minutes of the Go 2 proposal review meetings as issue comments, so that they can be cross-linked easily with the relevant issues. This meta-issue is for minutes only; comments that are not meeting minutes will be deleted.

(See also #33502 which records the minutes of non-Go 2 proposals review meetings).

@gopherbot gopherbot added this to the Proposal milestone Aug 27, 2019
@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Aug 28, 2019

2019-08-27 / @bradfitz, @griesemer, @ianlancetaylor

  • #33171 add a ternary conditional operator
    • likely decline, final call for comments
  • #33202 local/private to file
    • likely decline, final call for comments
  • #33205 add Posit data type
    • commented, put on hold
  • #33232 add alias for interface {} as any
    • commented, put on hold
  • #33325 add built-in function "formallyRead" for preventing elimination of "dead" stores
    • commented, closed (alternative solution exists)
  • #33359 negative slice/array indexes
    • adjusted title
    • commented (no action taken)
  • #33361 add elixir-like pipe operator
    • commented with solution using existing language
    • likely decline, final call for comments
  • #33387 simplify error handling with try err == nil {} except {}
    • likely decline, final call for comments
  • #33480 merge Type Assertion notation x.(T) into Explicit Conversion notation T(x)
    • likely decline, final call for comments
  • #33167 allow self-referencing closures
    • commented (no action taken)

@golang golang locked and limited conversation to collaborators Aug 28, 2019
@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Sep 3, 2019

2019-09-03 / @bradfitz, @griesemer, @ianlancetaylor

  • #33359 Go 2: negative slice/array indexes
    • commented
  • #33694 Go 2: add chained interval comparisons
    • commented
  • #33957 Go 2: Destructuring operator to assign fields in different types of the structs
    • commented
  • #32306 io: deprecate CopyBuffer
    • commented (request for feedback)
  • #32848 ** 32848**
    • commented
    • likely decline, final call for comments
  • #32884 Go2: try: Change try() proposal to use a special character in the position where an error is returned
    • commented
    • likely decline, final call for comments
  • #32941 Go2: Tuple type
    • commented
    • likely decline, final call for comments

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Sep 11, 2019

2019-09-10 / @bradfitz, @griesemer, @iant

  • #33359 Go 2: negative slice/array indexes
    • discussed, waiting for more community feedback
  • #33694 Go 2: add chained interval comparisons
    • commented
    • likely decline, final call for comments
  • #33957 Go 2: Destructuring operator to assign fields in different types of the structs
    • discussed, waiting for more community feedback
  • #34174 string interpolation
    • commented

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Sep 17, 2019

20190-09-17 / @bradfitz, @griesemer, @iant

  • #32306 io: deprecate CopyBuffer
    • commented and declined (we’re not going to remove CopyBuffer)
    • changed to (non-Go 2) documentation issue
  • #32964 add tryfunc keyword to further reduce boilerplating for error handling
    • commented
    • likely decline, final call for comments
  • #33002 Expand check functionality with scoped handle blocks
    • commented
    • likely decline, final call for comments
  • #33029 Go 2: add "or err: statement" after function calls for error handling
    • commented

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Sep 24, 2019

2019-09-24 / @bradfitz, @griesemer

  • #33080 allow conversion between return types and structs
    • commented
  • #20616 spec: disallow assigning >32bit untyped constant to variable of type int
    • discussed

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Oct 1, 2019

2019-10-01 / @bradfitz, @griesemer, @iant

  • #32848 Go 2: "onerr return"
    • closed (no further comments)
  • #32884 Go2: try: Change try() proposal to use a special character in the position where an error is returned
    • closed (no further comments)
  • #32941 Go2: Tuple type
    • commented
    • closed
  • #32964 Go 2: add tryfunc keyword to further reduce boilerplating for error handling
    • likely decline, final call for comments
  • #33171 Go 2: add a ternary conditional operator
    • commented
    • closed
  • #33202 Go2: local/private to file
    • commented
    • closed
  • #33361 Go 2: add elixir-like pipe operator
    • commented
    • closed
  • #33387 Go 2: simplify error handling with try err == nil {} except {}
    • closed
  • #33480 Go 2: merge Type Assertion notation x.(T) into Explicit Conversion notation T(x)
    • closed
  • #33029 Go 2: add "or err: statement" after function calls for error handling
    • commented
    • likely decline, final call for comments
  • #33046 Go 2: Make goroutine return channel with function result (promise)
    • commented
  • #33067 Go 2: remove the "if" keyword and use "err?!" to avoid error handling boilerplate
    • commented
    • likely decline, final call for comments
  • #33070 Go 2: list symbols that don't require package name
    • commented
    • likely decline, final call for comments
  • #33074 Go 2: Use ?<variable> simplify handling of multiple-return-values
    • commented
    • likely decline, final call for comments
  • #33078: "Filled types": a mechanism to guarantee types are not nil at compile time
    • commented

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Oct 8, 2019

2019-10-08 / @bradfitz, @griesemer, @iant

  • #33694: Go 2: add chained interval comparisons
    • closed (additional comments were unrelated)
  • #33080: allow conversion between return types and structs
    • commented
  • #33088: Go2: automatically take address of pointer parameters (reference arg behavior)
    • commented
    • likely decline, final call for comments
  • #33122: Go2: arg tags for marking const, other properties; use in vet
    • closed (duplicate of #24889)
  • #33150: Go 2: use symbol or function call in assignment for error handling
    • commented
    • likely decline, final call for comments
  • #33152: Go 2: simplify error handling with ? and …
    • commented

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Oct 15, 2019

2019-10-15 / @bradfitz, @griesemer, @iant

  • #32964 add tryfunc keyword to further reduce boilerplating for error handling
    • closed (no further comments)
  • #33002 Expand check functionality with scoped handle blocks
    • closed (no further comments)
  • #32895 Go 2: mini-package: a solution to unify Go builtin and custom generics
    • likely decline, final call for comments
  • #21182 Go 2: reduce noise in return statements that contain mostly zero values
    • commented
  • #33046 Go 2: Make goroutine return channel with function result (promise)
    • likely decline, final call for comments
  • #33078 "Filled types": a mechanism to guarantee types are not nil at compile time
    • commented
    • likely decline, final call for comments
  • #33161 Go 2: block scoped error handling
    • commented
    • likely decline, final call for comments
  • #33167 Go 2: allow self-referencing closure
    • commented

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Oct 22, 2019

2019-10-22 / @bradfitz, @griesemer

  • #35010 Go 2: integer comparison casting
    • commented
  • #34996 Go 2: syntax for explicitly implementable interfaces
    • commented
  • #34896 Go 2: looping with deferred condition as do while
    • commented
    • likely decline, final call for comments
  • #34144 Go 2: extend "continue" to jump to start of function
    • commented
    • likely decline, final call for comments
  • #34088 Go 2: allow trailing commas in the switch case enumerations
    • commented
    • likely decline, final call for comments
  • #34515 Go 2: extended type inference for make and new
    • commented

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Oct 29, 2019

2019-10-29 / @bradfitz, @griesemer, @iant

  • #33029 Go 2: add "or err: statement" after function calls for error handling
    • closed (no further comments)
  • #33046 Go 2: Make goroutine return channel with function result (promise)
    • closed (no further comments)
  • #33067 Go 2: remove the "if" keyword and use "err?!" to avoid error handling boilerplate
    • closed (no further comments)
  • #33070 Go 2: list symbols that don't require package name
    • closed (no further comments)
  • #33074 Go 2: Use ?<variable> simplify handling of multiple-return-values
    • closed (by submitter on 2019-10-07)
  • #33167 Go 2: allow self-referencing closures
    • commented
    • likely decline, final call for comments
  • #33359 Go 2: negative slice/array indexes
    • commented
  • #33818 Go 2: Type parameterized interface default methods
    • commented
  • #33957 Go 2: Destructuring operator to assign fields in different types of the structs
    • commented
  • #34174 string interpolation
    • commented
  • #34403 Go 2: aggregate error handling & defer syntax sugar
    • likely decline, final call for comments

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Nov 6, 2019

2019-11-05 / @bradfitz, @griesemer, @iant

  • #33088: Go2: automatically take address of pointer parameters (reference arg behavior)
    • closed (one comment, no substantial change)
  • #33150: Go 2: use symbol or function call in assignment for error handling
    • closed (one comment, no substantial change)
  • #34515 Go 2: extended type inference for make and new
    • commented
  • #34868 compile-time boolean assertions
    • commented
  • #34996 Go 2: syntax for explicitly implementable interfaces
    • commented
    • likely decline, final call for comments
  • #35010 Go 2: integer comparison casting
    • commented
    • likely decline, final call for comments

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Nov 12, 2019

2019-11-12 / @bradfitz, @griesemer

  • #32895 Go 2: mini-package: a solution to unify Go builtin and custom generics
    • closed (no change in consensus)
  • #33078 "Filled types": a mechanism to guarantee types are not nil at compile time
    • closed (author ok’ed closing the issue)

Note: This was an abbreviated mtg due to external scheduling conflicts.

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Nov 19, 2019

2019-11-19 / @bradfitz, @griesemer, @iant

  • #33167 Go 2: allow self-referencing closures
    • commented
    • removed final call for comments label due to valid feedback
  • #34896 Go 2: looping with deferred condition as do while
    • closed (no further comments)
  • #34144 Go 2: extend "continue" to jump to start of function
    • closed (no further comments)
  • #34088 Go 2: allow trailing commas in the switch case enumerations
    • closed (no change in concensus)
  • #35086 Go2: Error checking and handling inspired on Switch/Case statements
    • commented
    • likely decline, final call for comments
  • #35093 Go2: Functions which when called, can cause the current function to return
    • commented
  • #35179 Go 2: add try statement to specify handler for unhandled errors
    • commented
    • likely decline, final call for comments
  • #35206 Go 2: Discard methods
    • commented
    • likely decline, final call for comments
  • #35304 anonymous struct literals
    • commented (in fair detail)
  • #35307 Go2: Vector Basic Type - Similar to []T but with enhancements
    • commented

@ianlancetaylor
Copy link
Contributor

@ianlancetaylor ianlancetaylor commented Nov 26, 2019

2019-11-26 / @bradfitz, @ianlancetaylor

  • #34403 Go 2: aggregate error handling & defer syntax sugar
    • closed no change in consensus
  • #33957 Go 2: Destructuring operator to assign fields in different types of the structs
    • likely decline, final call for comments
  • #34174 Go 2: string interpolation
    • likely decline, final call for comments
  • #34515 Go 2: extended type inference for make and new
    • commented
  • #34868 Go 2: compile-time boolean assertions
    • pinged author
  • #35093 Go 2: functions which, when called, can cause the current function to return
    • pinged author
  • #35304 Go 2: anonymous struct literals
    • commented, pinged author
  • #35307 Go 2: vector basic type
    • likely decline, final call for comments
  • #35387 Go 2: file scope
    • likely decline, final call for comments

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Dec 3, 2019

2019-12-03 / @bradfitz, @griesemer, @iant

  • #34996 Go 2: syntax for explicitly implementable interfaces
    • closed (no change in consensus)
  • #35010 Go 2: integer comparison casting
    • closed (no final comments)
  • #33161 Go 2: block scoped error handling
    • closed (no final comments)
  • #35528 compact syntax for multiple property assignation on a same object
    • likely decline, final call for comments
  • #35535 treat declared function names as type names
    • likely decline, final call for comments
  • #31795 Go 2: change len, cap to return untyped ints if result is constant
    • closed (retracted by author)
  • #35654 Go 2: don't allow taking address of slice elements
    • likely decline, final call for comments

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Dec 10, 2019

2019-12-10 / @bradfitz, @griesemer, @iant

  • #35966 Go 2: universal zero value with type inference
    • commented
  • #33167 Go 2: allow self-referencing closures
    • likely decline, final call for comments
  • #33359 Go 2: negative slice/array indexes
    • likely decline, final call for comments

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Dec 17, 2019

2019-12-17 / @griesemer

  • #35086 Go2: Error checking and handling inspired on Switch/Case statements
    • closed (no final comments)
  • #35206 Go 2: Discard methods
    • closed (no final comments)

Note: Due to other reviewers being ooo I only processed two proposals that were scheduled for closing.

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Jan 7, 2020

2020-01-07 / @bradfitz, @griesemer, @iant

  • #33957 Go 2: Destructuring operator to assign fields in different types of the structs
    • closed (no change in concensus)
  • #35093 Go 2: functions which, when called, can cause the current function to return
    • likely decline, final call for comments
  • #35307 Go 2: vector basic type
    • closed (no change in concensus)
  • #35387 Go 2: file scope
    • closed (no change in concensus)
  • #35528 compact syntax for multiple property assignation on a same object
    • closed (no change in concensus)
  • #35535 treat declared function names as type names
    • closed (no further comments)
  • #35654 Go 2: don't allow taking address of slice elements
    • closed (no further comments)
  • #33167 Go 2: allow self-referencing closures
    • closed (no further comments)
  • #33359 Go 2: negative slice/array indexes
    • closed (no change in concensus)
  • #35179 Go 2: add try statement to specify handler for unhandled errors
    • closed (no change in concensus)

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Jan 14, 2020

2020-01-14 / @bradfitz, @griesemer, @iant

  • #36407 Go 2: run for loop in a goroutine with go keyword
    • commented
    • likely decline, final call for comments

We also discussed how we can make the Go 2 proposal review process more scalable. Currently it is fairly simple to create a new Go 2 proposal (like the proposal process intended), but then it becomes a significant burden for the proposal committee to ask and answer many of the questions that should have been answered by the proposal. We are planning to introduce a template of questions (CL 214820) with the intent to dismiss new proposals quickly if they don’t have reasonable answers for most of the questions.

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Jan 21, 2020

2020-01-21 / @bradfitz, @griesemer, @iant

  • #36508 Go 2: remove map from keywords
    • commented
  • #36669 Go 2: decorator support, like python decorator
    • commented
  • #36626 Go 2: make no result values expected when self has no return value too
    • commented
  • #33080 allow conversion between return types and structs
    • commented
  • #36284 Go2: Drying up Error Handling in Go
    • commented

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Jan 28, 2020

2020-01-28 / @bradfitz, @griesemer, @iant

  • #36457 Go 2: A compatible generics syntax
    • commented
    • closed (folded into #15292)
  • #36533 make generic parentheses declaration order consistent with array bracket declaration order
    • commented
    • closed (folded into #15292)
  • #36669 Go 2: decorator support, like python decorator
    • commented
    • likely decline, final call for comments
  • #36387 Go 2: exhaustive switching for enum type-safety
    • commented
  • #36338 Go 2: error handling with error receiver function
    • commented
  • #36332 Go 2: obtain struct field name in type-safe way
    • commented
    • likely decline, final call for comments
  • #36303 new builtin to pick from one of two values
    • commented
    • likely decline, final call for comments
  • #36177 make generic code clearer
    • commented
    • closed (folded into #15292)

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Feb 4, 2020

2020-02-04 / @griesemer, @iant

  • #35093 Go 2: functions which, when called, can cause the current function to return
    • closed (no further comments)
  • #36702 proposal: Go needs a comparable collection type
    • commented
    • put on hold
  • #36816 proposal: Go 2: expand power of range for slices/arrays
    • commented
  • #36855 Go 2: initialise funcs with custom type names
    • commented
    • likely decline, final call for comments
  • #36863 Go 2: indentation in multiline raw string literals
    • closed (duplicate of #32950)
  • #36884 Go 2: explicit nil and pointer param
    • commented
    • likely decline, final call for comments
  • #36890 Go 2: byte array <-> string conversions
    • commented
  • #36924 Go 2: add nameof() built-in function
    • commented
  • #36387 Go 2: exhaustive switching for enum type-safety
    • commented

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Feb 18, 2020

2020-02-18 / @bradfitz, @griesemer, @iant

  • #37243 Go 2: improve error handling with “??” keyword for a special case
    • likely decline, final call for comments
  • #37165 Add ?? operator to select first non-zero value
    • commented
    • on hold
  • #36508 Go 2: remove map from keywords
    • likely decline, final call for comments
  • #36890 Go 2: permit converting a string constant to a byte array type
    • retitled
  • #36955 Go 2: allow channel/map/type assertions in return (val, bool)
    • commented
    • likely decline, final call for comments
  • #36972 Go 2: compiler chosen constants - make(const, , )
    • commented
  • #37039 Go 2: add C# like nameof() built-in function
    • commented

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Feb 25, 2020

2020-02-25 / @bradfitz, @griesemer, @iant

  • #36303 new builtin to pick from one of two values
    • closed (no change in consensus)
  • #36669 Go 2: decorator support, like python decorator
    • closed (no change in consensus)
  • #36332 Go 2: obtain struct field name in type-safe way
    • closed (no change in consensus)
  • #37039 Go 2: add C# like nameof() built-in function
    • commented
  • #37085 Go 2: permit using errors.Return, etc., on LHS of an error assignment
    • commented
  • #37129 Allow function to satisfy interface while returning interface superset
    • commented
    • likely decline, final call for comments
  • #37141 Go 2: simplify error handling - error passing with "pass"
    • commented
  • #37144 Go 2: time: deprecate time.Tick(d Duration)
    • closed (proposal withdrawn)
  • #37235 Title and ToTitle have similar names but do different things
    • commented
    • closed
  • #37280 Go 2: implement an interface based on function signature if method name is ambiguous
    • commented
    • likely decline, final call for comments
  • #37292 Go 2: integrated compile time language
    • commented
    • likely decline, final call for comments

@josharian
Copy link
Contributor

@josharian josharian commented Mar 5, 2020

I just wanted to let the proposal review group know that these meeting minutes are helpful, and that I appreciate you writing them up. If others feel the same way, please give a thumbs up to this comment, so that the review group knows. :)

@myitcv
Copy link
Member

@myitcv myitcv commented Mar 5, 2020

Unfortunately, @josharian, it will be a very quiet emoji party because the conversation is locked 🔒

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Jul 16, 2020

An update regarding the Go 2 proposal review process:

Over the last couple of years, three of us (@bradfitz, @griesemer, @ianlancetaylor) have been meeting regularly for approx. one hour each week to review outstanding Go 2 proposals. More recently, we have started documenting this process in this issue with weekly updates. The goal was and is to identify promising ideas, weed out less suitable proposals, and generally shepherd along issues so they all get some attention eventually.

As of late, most proposals we are seeing suggest changes to the language. Any language change needs to be fully fleshed out and bring a significant benefit. Yet we are not planning to change the language beyond the ongoing discussion on generics.

In turn, our proposal review meetings have become somewhat scripted and unproductive: We spend much of the time trying to understand or identify issues with (language) proposals so we can make progress or close them for good reason, yet there is no urgent need to make progress with most of them in the first place. In a sense, our goal to ensure all proposals are shepherded along was probably misdirected.

Going forward, we will try a different approach: Instead of trying to process all incoming proposals, we will hand-pick promising candidates as time permits. Similarly, proposals which we don't see going anywhere we will close quickly without too much discussion. On the flipside, we may ignore proposals for extended periods of time. When we do address a proposal, we will continue to report it in this issue. To summarize: We are open to new ideas but we are in no hurry to make changes.

We hope this will free up time to work on more pressing issues. With respect to language changes, most will have to wait until a final decision on generics is made: we don't want unrelated changes to interfere with the generics design. And even after generics, the emphasis will be on fine-tuning the language and rounding it out where there are "holes", rather than radical changes. Given our growing code and user base, we must prize backward-compatibility and stability over personal convenience or preference.

The Go 2 proposal review team.

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Jul 24, 2020

2020-07-21 / @bradfitz, @griesemer, @iant

  • #39372 selector-specific control flow & gofmt rules to improve error-checking readability
    • closed (no further comments)
  • #39530 Go 2: permit file based overloading of unexported names
    • closed (no change in consensus)
  • #39799 Go 2: interface methods
    • likely decline, final call for comments

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Aug 11, 2020

2020-08-11 / @iant

  • #40349 Go 2: add a "scope lifting" operator ^ for short variable declarations in if and for statements
    • closed (dup of #377 which expresses similar ideas)
  • #40353 Go 2: multivalue switch
    • likely decline, final call for comments
  • #40387 Go 2: accept multiple return values as the last arguments to function calls
    • likely decline, final call for comments
  • #40462 Go 2: allow fallthrough in type switches
    • likely decline, final call for comments

@ianlancetaylor
Copy link
Contributor

@ianlancetaylor ianlancetaylor commented Aug 18, 2020

2020-08-18 / @ianlancetaylor

  • #40583 Go 2: use keywords throw, catch, and guard to handle errors
    • likely decline, final call for comments

@ianlancetaylor
Copy link
Contributor

@ianlancetaylor ianlancetaylor commented Aug 25, 2020

2020-08-25 / @ianlancetaylor

  • #40708 Go 2: allow & as l-value operator
    • likely decline, final call for comments

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Sep 1, 2020

2020-09-01 / @bradfitz, @griesemer, @iant

  • #40821 Go 2: the "watch" statement for easier error handling & more
    • likely decline, final call for comments
  • #41129 Go 2: Multi-dimensional slices
    • gri commented

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Sep 15, 2020

2020-09-15 / @griesemer, @iant

  • #41129 Go 2: Multi-dimensional slices
    • likely decline, final call for comments
  • #41148 Go 2: multiple value/tuple channels
    • likely decline, final call for comments
  • #41289 Go 2: add native type for map that maintains key order
    • likely decline, final call for comments
  • #39799 Go 2: interface methods
    • closed (no change in consensus)
  • #40353 Go 2: multivalue switch
    • closed (no further comments)
  • #40387 Go 2: accept multiple return values as the last arguments to function calls
    • closed (no further comments)
  • #40462 Go 2: allow fallthrough in type switches
    • closed (no further comments)
  • #40583 Go 2: use keywords throw, catch, and guard to handle errors
    • closed (no further comments)

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Oct 2, 2020

2020-09-29 / @bradfitz, @griesemer, @iant

  • #39669: Go 2: generic types (GT)
    • likely decline, final call for comments
  • #41449: Go 2: generics: use operators for meta typing
    • likely decline, final call for comments
  • #41478: Go 2: a function type for all signatures
    • likely decline, final call for comments
  • #40708: Go 2: allow & as l-value operator
    • closed (no further comments)

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Oct 21, 2020

2020-10-06 / @bradfitz, @griesemer, @iant

  • #41414: Go 2: goroutine collector or closer to prevent goroutine leaks
    • likely decline, final call for comments
  • #41695: Go 2: permit conversion from []chan int to []<-chan int
    • likely decline, final call for comments

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Oct 21, 2020

2020-10-13 / @bradfitz, @griesemer, @iant

  • #41129: Go 2: Multi-dimensional slices
    • closed (no change in consensus)
  • #41148: Go 2: multiple value/tuple channels
    • closed (no further comments)

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Oct 21, 2020

2020-10-20 / @griesemer, @iant

  • #41853: Go 2: add new type of variadic functions with limited number of parameters and default values
    • likely decline, final call for comments
  • #41897: Go 2: ability to create Dynamic Proxies like in Java
    • likely decline, final call for comments
  • #41908: Go 2: reducing "if err != nil" by implicit form of it
    • likely decline, final call for comments

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Oct 29, 2020

2020-10-27 / @bradfitz, @griesemer, @iant

  • #39669: Go 2: generic types (GT)
    • closed (no change in consensus)
  • #41449: Go 2: generics: use operators for meta typing
    • closed (no change in consensus)
  • #41478: Go 2: a function type for all signatures
    • closed (no change in consensus)

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Nov 11, 2020

2020-11-10 / @bradfitz, @griesemer, @iant

  • #41414 Go 2: goroutine collector or closer to prevent goroutine leaks
    • closed (no further comments)
  • #41695 Go 2: permit conversion from []chan int to []<-chan int
    • closed (no further comments)
  • #42232 Go 2: Not import packages
    • likely decline, final call for comments
  • #30639 Go 2: add mechanism to remove API as a function of caller's go.mod "go 1.xx" version
    • commented

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Dec 1, 2020

2020-11-24 / @bradfitz, @griesemer, @iant

  • #41853 Go 2: add new type of variadic functions with limited number of parameters and default values
    • closed (further discussion but no change in consensus)
  • #41897 Go 2: ability to create Dynamic Proxies like in Java
    • closed (no further comments)
  • #41908 Go 2: reducing "if err != nil" by implicit form of it
    • closed (no change in consensus)

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Dec 1, 2020

2020-12-01 / @griesemer, @iant

  • #42847 Go 2: Safe navigation operator (?.)
    • commented

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Dec 15, 2020

2020-12-15 / @griesemer, @iant

  • #42232 Go 2: Not import packages
    • closed (no further comments)
  • #42847 Go 2: Safe navigation operator (?.)
    • likely decline, final call for comments

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Jan 6, 2021

2021-01-05 / @bradfitz, @griesemer, @iant

  • #43123 Go 2: permit types to say they may only be created by containing package
    • commented
  • #43269 Go 2: introduce interface type to solve nil comparison dilemma
    • likely decline, final call for comments
  • #43390 Go 2: allow type-parameterized methods
    • put on hold
  • #43483 Go 2: obtain length of array from its type
    • commented

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Jan 13, 2021

2021-01-12 / @griesemer, @iant

  • #42847 Go 2: Safe navigation operator (?.)
    • closed (further comments but no change in consensus)
  • #43123 Go 2: permit types to say they may only be created by containing package
    • likely decline, final call for comments

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Jan 20, 2021

2021-01-19 / @griesemer, @iant

  • #43557 Go 2: function values as iterators
    • commented
  • #43659 Go 2: Type Parameter Declaration and Instantiation Segregation
    • likely decline, final call for comments
  • #43731 Go 2: spec: remove init functions
    • commented

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Jan 28, 2021

2021-01-26 / @bradfitz, @griesemer, @iant

  • #43731 Go 2: spec: remove init functions
    • likely decline, final call for comments
  • #43777 Go 2: catch error handler
    • likely decline, final call for comments
    • In the meantime the issue was closed by the author.

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Feb 2, 2021

2021-02-02 / @bradfitz, @griesemer, @iant

  • #43269 Go 2: introduce interface type to solve nil comparison dilemma
    • closed (no change in consensus)

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Feb 10, 2021

2021-02-09 / @bradfitz, @griesemer

  • #43123 Go 2: permit types to say they may only be created by containing package
    • closed (no change in consensus)
  • #44022 Go 2: add match statement
    • likely decline, final call for comments

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Feb 16, 2021

2021-02-16 / @bradfitz, @griesemer, @iant

  • #43659 Go 2: Type Parameter Declaration and Instantiation Segregation
    • closed (no further comments)
  • #44219 Allow differentiating between a nil string and an empty string
    • likely decline, final call for comments

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Feb 23, 2021

2021-02-23 / @bradfitz, @griesemer, @iant

  • #43731 Go 2: spec: remove init functions
    • closed (no further comments)

Going forward we are going to reduce the frequency of these proposal review meetings (for Go2-labeled proposals) to once a month (Tuesday of the first week of each month). We are deferring unrelated language changes until generics have landed; also, currently the number of incoming proposals is relatively low.

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Apr 6, 2021

2021-04-06 / @bradfitz, @griesemer, @iant

  • #44022 Go 2: add match statement
    • closed (no change in concensus)
  • #44219 Allow differentiating between a nil string and an empty string
    • closed (no change in concensus)
  • #44396 Go 2: default values for named return parameters
    • likely decline, final call for comments
  • #44750 Go 2: allow main to return
    • commented
    • likely decline, final call for comments
  • #44775 Go 2: equivalence between operators and monadic functions
    • likely decline, final call for comments
  • #44928 Go 2: chaining method calls with return type (T, error)
    • likely decline, final call for comments
  • #44973 Go2: goroutines execute defer statements when main exits
    • likely decline, final call for comments
  • #45039 Go 2: add numeric and ordered generic types
    • commented
    • closed

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented May 4, 2021

2021-05-04 / @bradfitz, @griesemer, @iant

  • #44396 Go 2: default values for named return parameters
    • closed (no further comments)
  • #44750 Go 2: allow main to return
    • closed (no change in concensus)
  • #44775 Go 2: equivalence between operators and monadic functions
    • closed (no further comments)
  • #44928 Go 2: chaining method calls with return type (T, error)
    • closed (no further comments)
  • #44973 Go2: goroutines execute defer statements when main exits
    • closed (no further comments)
  • #45319 Go 2: add spaceship operator ⇔
    • likely decline, final call for comments
  • #45320 Go 2: allow explicit conversion of bool to arbitrary numeric types
    • discussed
  • #45380 spec: generics: type switch on parametric types
    • put on hold
  • #45405 spec: allow embedding interfaces with conflicting methods
    • likely decline, final call for comments
  • #45545 Go 2: spec: allow conversion from *T to *[1]T
    • commented
    • likely decline, final call for comments
  • #45591 spec: generics: Anonymous generic aggregate types
    • likely decline, final call for comments
  • #45624 expression to create pointer to simple types
    • discussed

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Jun 1, 2021

2021-06-01 / @bradfitz, @griesemer, @iant

  • #46105 Go 2: expression scoped variables
    • commented
  • #46109 Go 2: add "var name auto" to handle some edge cases in type inference
    • likely decline, final call for comments
  • #46205 spec: cast between named nested structs that different only by field tags
    • commented
  • #46433 Go 2: try-catch by assignment
    • likely decline, final call for comments
  • #45319 Go 2: add spaceship operator ⇔
    • closed (no further comments)
  • #45405 spec: allow embedding interfaces with conflicting methods
    • closed (no further comments)
  • #45545 Go 2: spec: allow conversion from *T to *[1]T
    • closed (no change in concensus)
  • #45591 spec: generics: Anonymous generic aggregate types
    • closed (no change in concensus)

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Aug 3, 2021

2021-08-03 / @bradfitz, @griesemer, @iant

  • #46109
    • closed (no further comments)
  • #46433
    • closed (no change in concensus)
  • #46620
    • commented
  • #46655
    • likely decline, final call for comments
  • #46717
    • likely decline, final call for comments
  • #46888
    • likely decline, final call for comments
  • #47295
    • likely decline, final call for comments
  • #47429
    • likely decline, final call for comments

@griesemer
Copy link
Contributor Author

@griesemer griesemer commented Sep 8, 2021

2021-09-08 / @bradfitz, @griesemer, @iant

  • #46655
    • closed (no change in consensus)
  • #46717
    • closed (no further comments)
  • #46888
    • closed (no further comments)
  • #47295
    • closed (no change in consensus)
  • #47429
    • closed (no further comments)
  • #47680
    • likely decline, final call for comments
  • #47709
    • commented
  • #47934
    • likely decline, final call for comments
  • #48174
    • commented
  • #46620
    • likely decline, final call for comments
  • #46205
    • likely decline, final call for comments
  • #46105
    • likely decline, final call for comments
  • #45653
    • likely decline, final call for comments

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
6 participants