Recientemente Google ha presentado Go, su apuesta personal por los lenguajes de programación. Se dice que mezcla la potencia y rendimiento de C++ con la flexibilidad de Python, oh!!!! casi nà!
Aunque sin mucho tiempo para poder probarlo en profundidad y dar una visión más cercana a este nuevo lenguaje de programación, la verdad es que, aunque en Beta (típico en Google) y con consejos de no portar ninguna aplicación, ya tenemos algunos perlas. Puede parecer complejo, extraño o muy funcional, según la forma de verlo. Algún ejemplo que lo puedo ilustrar:
- Hola mundo
package main import "fmt"; func main() { fmt.Printf("Hola mundo\n"); }
- Servidor web
package main import ( "http"; "io"; ) func main() { http.Handle("/test_go", http.HandlerFunc(RequestHandler)); if err != nil { panic("Error: ", err.String()); } } func RequestHandler(c *http.Conn, req *http.Request) { str := "Protocol: " + req.Proto + " " + "Method: " + req.Method + " " + "User-Agent: " + req.UserAgent; io.WriteString(c, str); }
Algo sorprendente, sin dudarlo! Sobre todo para aquellas personas que alguna vez tuvieron que hacer algo similar, en Go es simple. Google siempre piensa a lo grande y a lo escalable (cloud computing...).
Por cierto, a fecha de hoy todavía no existe una API de gWave que permita el acceso de Go. Tendremos que seguir con Python/Java.
Mas info en: http://golang.org/