Go Roadmap
This page lists features and ideas being developed or discussed by the
Go team. This list will be updated as work continues.
The roadmap should be discussed on
the golang-nuts
mailing list.
Language roadmap
This is a list of language changes that are being considered.
Appearance on this list is no guarantee that the change will be
accepted.
-
Adjust and simplify semicolon rules.
-
Adjust definition of
...
in parameter lists.
-
Add explicit conversions from
string
to []byte
and []int
.
-
Possibly rewrite restriction on goto across variable declarations.
-
Variant types. A way to define a type as being the union of some set
of types.
-
Possibly provide a method that will be run by the garbage
collector when an item is freed.
-
Generics. An active topic of discussion.
-
Exceptions. An active topic of discussion.
Implementation roadmap
-
Improved garbage collector, most likely a reference counting collector
with a cycle detector running in a separate core.
-
Debugger.
-
Native Client (NaCl) support.
-
App Engine support.
-
Improved CGO including some mechanism for calling back from C to Go.
-
SWIG support.
-
Public continuous build and benchmark infrastructure.
-
Improved implementation documentation.
-
Package manager, possibly including a language change to the import
statement.
Gc compiler roadmap
-
Method expressions.
-
Support multiple packages with the same name (but different import
paths) in the same program.
-
Implement goto restrictions.
-
Safe compilation mode: generate code which is guaranteed not to obtain
an invalid memory address other than via
import "unsafe"
.
-
Generate ELF debug info.
-
Improved optimization.
-
5g: Better floating point support.
Gccgo compiler roadmap
-
Method expressions.
-
Support multiple packages with the same name (but different import
paths) in the same program.
-
Implement goto restrictions.
-
Implement garbage collection.
-
Use goroutines rather than threads.
-
Separate gcc interface from frontend proper.
-
Use escape analysis to keep more data on stack.