"Go is an open source programming language that makes it easy to build simple, reliable, and efficient software". It's a compiled programming language derived from "C" created at Google in 2007 by Robert Griesemer, Rob Pike (yes,
that Rob Pike), and Ken Thompson (yes,
that Ken Thompson). You can get it
here for your platform.
It comes with a native cross compiler enabling the programmer to build binaries for the most common operative systems and architectures in a very easy way.
You install it, you set the environment variable
GOROOT to the Go install directory,
GOPATH to your work directory, add
$GOROOT/bin (or
%GOROOT%/bin) to your
PATH, and you're ready to go.
Create a directory
hello in your work directory, enter it, and create there the typical hello world demo source code:
Code:
package main
import "fmt"
func main() {
fmt.Println("Hello, world")
}
Name the file
anythingyolike.go and then compile it with
go build. An executable will be build, named as the project directory (
hello in this case). Go builds a (large) static executable with everything in. No dependencies at all to distribute.
Switching from an OS to another or between hardware architectures is as easy as setting two environment variables and compile again your project.
As far as I know PW3, for example, should be an ARM Cortex A8, implementing the ARMv7A specs. The variables to set are:
Code:
GOOS=linux
GOARCH=arm
GOARM=7
At the moment I haven't got a Kindle to test Go generated binaries: my PW1 has been stolen and I'm waiting a PW3, hoping it's still jailbreakeable.
Can anybody try it, please?