Hands On: Google Go

google go logo

Con la premisa de programar rápido, divertido y eficiente, Google y GoLang.org anuncian hoy el lanzamiento de la primera versión de un nuevo lenguaje de programación llamado Go.

Se trata de un lenguaje abierto, basado en una sintaxis reducida de C/C++ (manteniendo declaración de Tipos sin hacer las cosas muy complicadas con árboles de Herencias para evitarnos hacer refactors) y en la simplicidad que encontramos los programadores en lenguajes como Python o Ruby.

Go genera programas realmente compilados con seguridad de tipos de datos en memoria, y cuenta con algo que no tenemos en C/C++, Recopilación de Basura (Garbage Collection). Lo que más nos impresiona es la velocidad de compilación, vean por Uds. mismos:

Además GO está pensado para ser ejecutado de forma concurrente en múltiples procesadores.

Así luce un “Hello World”:


package main
import "fmt"
func main() {
fmt.Printf("Hola Mundo!\n")
}

Acá nuestra primera experiencia con Google Go (se ve bien pantalla completa):

Y acá una charla más técnica de una hora aproximadamente dictada el 30 de Octubre 2009 en Google (1 hora)

En estos momentos no hemos programado nada significativo como para tener críticas profundas con fundamento, así que nos reservamos únicamente a los comentarios hechos en el video realizado.

Enlaces relacionados:

Anuncio en Techcrunch

GoLang.org (Página oficial del proyecto)

  • Hiram

    Hola amigo, acabo de ver tu video en youtube me interesa bastante que me pudieras explicar la forma de “instalar” en una pltaforma Windows, ya que veo en el video lo tienes corriendo en MAC OS, un saludo muy bueno el video y si pudieras ayudarme muchas gracias… saludos desde mexico

    • Hiram, no creo que Go este pensado para programar en Windows. El compilador solo funciona en arquitecturas POSIX (Unix, Linux, Darwin)

      “Go compilers support two operating systems (Linux, Mac OS X) and three instruction sets. The versions for Linux and Mac are equally capable except that the ARM port does not run on OS X (yet). ”

      Supongo que es porque esto es un lenguaje para el desarrollo de sistemas y servicios, no de aplicaciones de Ventana ni nada de esto.

      Generalmente cuando se desarrollan servicios de uso masivo concurrente (en el mundo open source, donde encuentras Go) lo vas a querer hacer para que tu software se ejecute en servidores Linux/Unix

      Supongo que puedes utilizar tu editor de texto favorito en linux, pero vas a tener que compilar todo en Linux o mac.
      Recomendaria que corras Virtual Box con una imagen de Ubuntu en tu computadora, esa seria una opcion.

      Saludos desde NoLaPeles

      • Hiram

        Muchas gracias por su respuesta tomare en cuenta lo que mencionas, solo una felicitacion por el bonito blog que tienen y reitero mis saludos desde mexico. Probare la opcion de correr alguna distro de linux en mi otra computadora.Gracias