diff options
Diffstat (limited to 'doc/devel/roadmap.html')
-rw-r--r-- | doc/devel/roadmap.html | 135 |
1 files changed, 135 insertions, 0 deletions
diff --git a/doc/devel/roadmap.html b/doc/devel/roadmap.html new file mode 100644 index 000000000..d3c494715 --- /dev/null +++ b/doc/devel/roadmap.html @@ -0,0 +1,135 @@ +<!-- Roadmap --> + +<h2 id="Roadmap">Go Roadmap</h2> + +<p> +This page lists features and ideas being developed or discussed by the +Go team. This list will be updated as work continues. + +<p> +The roadmap should be discussed on +the <a href="http://groups.google.com/group/golang-nuts">golang-nuts +mailing list</a>. + +<h3 id="Language_roadmap"> +Language roadmap</h3> + +<p> +This is a list of language changes that are being considered. +Appearance on this list is no guarantee that the change will be +accepted. + +<ul> +<li> +Possibly rewrite restriction on goto across variable declarations. +<li> +Variant types. A way to define a type as being the union of some set +of types. +<li> +Generics. An active topic of discussion. +<li> +Methods for operators, to allow a type to use arithmetic notation for +expressions. +<li> +Possibly allow top-level packages to be given names other than main. +</ul> + +<h3 id="Implementation_roadmap"> +Implementation roadmap</h3> + +<ul> +<li> +Improved garbage collector. +<li> +Debugger. +<li> +Improved implementation documentation. +</ul> + +<h4 id="Gc_roadmap"> +Gc compiler roadmap</h4> + +<ul> +<li> +Implement goto restrictions. +<li> +Improved optimization. +<li> +Use escape analysis to keep more data on stack. +</ul> + +<h4 id="Gccgo_roadmap"> +Gccgo compiler roadmap</h4> + +<ul> +<li> +Implement goto restrictions. +<li> +Use goroutines rather than threads. +<li> +Separate gcc interface from frontend proper. +<li> +Use escape analysis to keep more data on stack. +</ul> + +<h4 id="Tools_roadmap"> +Tools roadmap</h4> + +<ul> +<li> +Strengthen goinstall until it can displace make for most builds. +</ul> + +<h4 id="Packages_roadmap"> +Packages roadmap</h4> + +<ul> +<li> +Faster, RE2-like regular expressions. +<li> +Comprehensive support for international text. +<li> +Support for international dates, times, etc. +<li> +Support for multilingual messages. +</ul> + + +<h3 id="done">Done</h3> + +<ul> +<li> +gc: Generate DWARF debug info. +<li> +gc: Provide gdb support for runtime facilities. +<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> +SWIG support. +<li> +Simpler semicolon rules. +<li> +A more general 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). +<li> +5g: Better floating point support. +<li> +Improved CGO including some mechanism for calling back from C to Go. +<li> +Faster, allocation-light reflection. +<li> +App Engine support. +</ul> |