No Description

Ian Lance Taylor 55626ee50b [dev.go2go] README: document that this branch is no longer maintained 3 years ago
.github db66972359 .github: add link to questions in ISSUE_TEMPLATE 4 years ago
api 00f2ff5c94 api/go1.16: add go/build/constraint APIs 3 years ago
doc 312fd9937d cmd/go: remove -insecure flag on go get 3 years ago
lib 54b251f542 lib/time, time/tzdata: update tzdata to 2021a 3 years ago
misc a655208c9e cmd/link: handle types as converted to interface when dynlink 3 years ago
src 55626ee50b [dev.go2go] README: document that this branch is no longer maintained 3 years ago
test 8f19f8a9e1 [dev.go2go] all: merge master (12bb256) into dev.go2go 3 years ago
.gitattributes ee379d2b08 all: treat all files as binary, but check in .bat with CRLF 4 years ago
.gitignore ca0f303f2b .gitignore: ignore src/cmd/dist/dist 7 years ago
AUTHORS 06c72f3627 A+C: change email address for Baokun Lee 3 years ago
CONTRIBUTING.md 4c4ce3dc79 all: restore changes from faulty merge/revert 6 years ago
CONTRIBUTORS 06c72f3627 A+C: change email address for Baokun Lee 3 years ago
LICENSE d0c1888739 doc: revert copyright date to 2009 8 years ago
PATENTS 4468e5b376 LICENSE: separate, change PATENTS text 14 years ago
README.go2go.md 55626ee50b [dev.go2go] README: document that this branch is no longer maintained 3 years ago
README.md 6f3da9d2f6 README: pull gopher image from website 3 years ago
SECURITY.md f7a00c9906 SECURITY.md: update go versions 5 years ago
codereview.cfg 356c1719ec [dev.go2go] all: update/fix codereview.cfg 3 years ago
favicon.ico ef694a0110 website: recreate 16px and 32px favicon 8 years ago
robots.txt 06a923ada0 godoc: serve robots.txt raw 13 years ago

README.go2go.md

dev.go2go branch

This branch provides an experimental go2go tool for testing the use of the generics design draft. This branch was published in 2020 and is no longer being maintained. The generics proposal has been accepted and development is now focused on implementing the proposal in the ordinary Go tools.

Original README

This branch contains a type checker and a translation tool for experimentation with generics in Go. This implements the generics design draft.

You can build this branch as usual. You can then use the new go2go tool. Write your generic code in a file with the extension .go2 instead of .go. Run it using go tool go2go run x.go2. There are some sample packages in cmd/go2go/testdata/go2path/src. You can see the full documentation for the tool by running go doc cmd/go2go.

The go2go tool will look for .go2 files using the environment variable GO2PATH. You can find some useful packages that you might want to experiment with by setting GO2PATH=$GOROOT/src/cmd/go2go/testdata/go2path.

If you find bugs in the updated type checker or in the translation tool, they should be filed in the standard Go issue tracker. Please start the issue title with cmd/go2go. Note that the issue tracker should only be used for reporting bugs in the tools, not for discussion of changes to the language.

Unlike typical dev branches, we do not intend any eventual merge of this code into the master branch. We will update it for bug fixes and change to the generic design draft. If a generics language proposal is accepted, it will be implemented in the standard compiler, not via a translation tool. The necessary changes to the go/* packages (go/ast, go/parser, and so forth) may re-use code from this prototype but will follow the usual code review process.