1
0
mirror of https://github.com/golang/go synced 2024-11-21 13:44:45 -07:00

doc: update roadmap

R=r, rsc, iant
CC=golang-dev
https://golang.org/cl/2312042
This commit is contained in:
Andrew Gerrand 2010-10-26 16:18:12 +11:00
parent 8fff9166f6
commit d7424b1a71

View File

@ -2,6 +2,7 @@
<h2 id="Roadmap">Go Roadmap</h2> <h2 id="Roadmap">Go Roadmap</h2>
<p>
This page lists features and ideas being developed or discussed by the This page lists features and ideas being developed or discussed by the
Go team. This list will be updated as work continues. Go team. This list will be updated as work continues.
@ -26,6 +27,9 @@ Variant types. A way to define a type as being the union of some set
of types. of types.
<li> <li>
Generics. An active topic of discussion. Generics. An active topic of discussion.
<li>
Methods for operators, to allow a type to use arithmetic notation for
expressions.
</ul> </ul>
<h3 id="Implementation_roadmap"> <h3 id="Implementation_roadmap">
@ -38,14 +42,10 @@ with a cycle detector running in a separate core.
<li> <li>
Debugger. Debugger.
<li> <li>
Native Client (NaCl) support.
<li>
App Engine support. App Engine support.
<li> <li>
Improved CGO including some mechanism for calling back from C to Go. Improved CGO including some mechanism for calling back from C to Go.
<li> <li>
SWIG support.
<li>
Improved implementation documentation. Improved implementation documentation.
</ul> </ul>
@ -56,28 +56,55 @@ Gc compiler roadmap</h4>
<li> <li>
Implement goto restrictions. Implement goto restrictions.
<li> <li>
Safe compilation mode: generate code that is guaranteed not to obtain Generate DWARF debug info.
an invalid memory address other than via <code>import "unsafe"</code>.
<li> <li>
Generate ELF debug info. Provide gdb support for runtime facilities.
<li> <li>
Improved optimization. Improved optimization.
<li> <li>
5g: Better floating point support. 5g: Better floating point support.
</ul> </ul>
<h4 id = "Gccgo_roadmap"> <h4 id="Gccgo_roadmap">
Gccgo compiler roadmap</h4> Gccgo compiler roadmap</h4>
<ul> <ul>
<li> <li>
Implement goto restrictions. Implement goto restrictions.
<li> <li>
Implement garbage collection.
<li>
Use goroutines rather than threads. Use goroutines rather than threads.
<li> <li>
Separate gcc interface from frontend proper. Separate gcc interface from frontend proper.
<li> <li>
Use escape analysis to keep more data on stack. Use escape analysis to keep more data on stack.
</ul> </ul>
<h3 id="done">Done</h3>
<ul>
<li>
Safe compilation mode: generate code that is guaranteed not to obtain an invalid memory address other than via <code>import "unsafe"</code>.
<li>
Gccgo: garbage collection.
<li>
Native Client (NaCl) support.
<li>
SWIG support.
<li>
Simpler semicolon rules.
<li>
A better definition of <code>...</code> in parameter lists.
<li>
Explicit conversions from <code>string</code>
to <code>[]byte</code> and <code>[]int</code>.
<li>
A function that will be run by the garbage collector when an item is freed
(runtime.SetFinalizer).
<li>
Public continuous build and benchmark infrastructure (gobuilder).
<li>
Package manager (goinstall).
<li>
A means of recovering from a panic (recover).
</ul>