2009-10-22 01:13:36 -06:00
<!-- The Go Programming Language -->
2009-11-03 20:59:45 -07:00
< script >
// On the frontpage we hide the header and navigation elements that other
// pages have.
document.getElementById('generatedHeader').style.display = 'none';
document.getElementById('nav').style.display = 'none';
< / script >
< div id = "gettingStarted" >
< h1 > Getting started< / h1 >
< ol >
< li >
< span > < a href = "/doc/install.html" > Install Go< / a > .< / span >
< / li >
< li >
< span > Read the < a href = "/doc/go_tutorial.html" > tutorial< / a > .< / span >
< / li >
< li >
< span > Learn the < a href = "/pkg" > libraries< / a > .< / span >
< / li >
< / ol >
2009-11-05 14:39:00 -07:00
< h1 > Slow compiles?< br > Watch this.< / h1 >
2009-11-05 13:18:54 -07:00
< table >
< tr >
< td >
< a href = "http://www.youtube.com/FIXME" > < img src = "/doc/video-snap.jpg" > < / a >
< / td >
2009-11-05 14:39:00 -07:00
< / tr >
< tr >
2009-11-05 13:18:54 -07:00
< td >
Programming with Go. < a href = "http://www.youtube.com/FIXME" > Watch now< / a > .
< / td >
< / tr >
< / table >
2009-11-03 20:59:45 -07:00
< / div >
< div id = "frontpage" >
< table style = "padding-top: 1em; padding-bottom: 2em;" >
< tr >
< td >
2009-11-05 13:18:54 -07:00
< img style = "padding-right: 1em;" src = "/doc/go-logo-black.png" >
2009-11-03 20:59:45 -07:00
< / td >
< td >
2009-11-05 14:39:00 -07:00
< div > < span style = "font-size: 2em; font-weight: bold;" > a systems programming language< / span > < br > < span style = "font-size: 1.5em;" > Expressive, concurrent, garbage-collected< / span > < / div >
2009-11-03 20:59:45 -07:00
< / td >
< / tr >
< / table >
< p style = "font-size: 1.5em; font-weight: bold;" > Go is … < / p >
< h3 > … simple< / h3 >
< pre class = "code" >
package main
import "fmt"
func main() {
2009-11-05 14:39:00 -07:00
fmt.Printf("Hello, 世界\n")
2009-11-03 20:59:45 -07:00
}< / pre >
< h3 > … fast< / h3 >
2009-11-05 14:39:00 -07:00
< p >
Go compilers produce fast code fast. Typical builds take a fraction of a second yet the resulting programs run nearly as quickly as comparable C or C++ code.
< / p >
2009-11-03 20:59:45 -07:00
< h3 > … safe< / h3 >
2009-11-05 14:39:00 -07:00
< p > Go is type safe and memory safe. Go has pointers but no pointer arithmetic.
For random access, use slices, which know their limits.< / p >
2009-11-03 20:59:45 -07:00
< h3 > … concurrent< / h3 >
2009-11-05 14:39:00 -07:00
< p >
Go promotes writing systems and servers as sets of lightweight
communicating processes, called goroutines, with strong support from the language.
Run thousands of goroutines if you want— and say good-bye to stack overflows.
< / p >
< h3 > … fun< / h3 >
< p >
Go has fast builds, clean syntax, garbage collection,
methods for any type, and run-time reflection.
It feels like a dynamic language but has the speed and safety of a static language.
It's a joy to use.
< / p >
< / p >
2009-11-03 20:59:45 -07:00
< / div >
<!--
Commented out for now. We need to organise these resources.
2009-10-22 01:13:36 -06:00
< h2 > Other Resources< / h2 >
< ul >
< li > Mailing list: < a href = "http://groups.google.com/group/NAME_TO_BE_DETERMINED" > Go Nuts < nuts@XXX> < / a > . Please don't mail group members individually.< / li >
< li > < a href = "http://code.google.com/p/go/source/browse/" > Source code< / a >
< li > < a href = "http://code.google.com/p/go/issues/list" > Issue Tracker< / a >
< / li >
< br / >
< li > The Google Tech Talk from October 30, 2009:
< a href = "/doc/go_talk-20091030.pdf" target = "_top" > PDF< / a >
< a href = "https://video.google.com/XXX" target = "_top" > Video< / a >
< / li >
< li > Go course:
< ul >
< li > PDF slides:
< a href = "/doc/GoCourseDay1.pdf" target = "_top" > Day 1< / a > ,
< a href = "/doc/GoCourseDay2.pdf" target = "_top" > Day 2< / a > ,
< a href = "/doc/GoCourseDay3.pdf" target = "_top" > Day 3< / a >
< / li >
< / ul >
< / li >
< / ul >
2009-11-03 20:59:45 -07:00
-->