]> Cypherpunks repositories - gostls13.git/commit
spec: remove notion of core types
authorRobert Griesemer <gri@golang.org>
Thu, 30 Jan 2025 23:11:19 +0000 (15:11 -0800)
committerRobert Griesemer <gri@google.com>
Tue, 25 Feb 2025 17:28:48 +0000 (09:28 -0800)
commit434de2f8e9d3837711e0f853a2873cbb83325019
tree9d10f92628f796f4777406c5d712aed385ede13f
parentbdef1778311c19c997d4fb14a4374bd712014d13
spec: remove notion of core types

This CL removes the notion of core types from the spec.

Instead of referring to core types, each section that did
so before is reverted to approx. the pre-generics (1.17)
prose, and additional paragraphs cover the type parameter
cases as needed.

The hope is that this makes it easier to read the spec.
When type parameters are involved, the extra prose is
local to the language feature in question and thus more
readily available. When no type parameters are present,
readers do not have to concern themselves with core types.

In contrast to CL 621919, this change is not intended to
loosen the spec in any way and therefore does not change
the language (if the new prose implies otherwise, we will
correct it).

Except for adjustments to compiler error messages
(no mention of core types anymore), no other changes
to the compiler or tools are required.

Future CLs may selectively relax requirements on a language
construct by language construct basis; each such change can
be discussed and proposed independently.

For #70128.

Change-Id: I6ed879a472c615d7c8dbdc7b6bd7eef3d12eff7e
Reviewed-on: https://go-review.googlesource.com/c/go/+/645716
Reviewed-by: Ian Lance Taylor <iant@google.com>
Reviewed-by: Rob Pike <r@golang.org>
Reviewed-by: Robert Findley <rfindley@google.com>
Reviewed-by: Robert Griesemer <gri@google.com>
TryBot-Bypass: Robert Griesemer <gri@google.com>
doc/go_spec.html