jueves, 12 de noviembre de 2009

El nuevo lenguaje de programación de Google


El gigante de Internet ha puesto a libre disposición un nuevo lenguaje de programación propio que intenta combinar la velocidad de los lenguajes dinámicos con el rendimiento y seguridad de los lenguajes compilados. Al parecer se trata de un lenguaje experimental y en desarrollo ya que en principio fue concebido para ser usado en el diseño de los sistemas internos de Google. El nuevo proyecto de Google ha estado en desarrollo durante dos años, y entre los desarrolladores de el nuevo lenguaje hay personas renombrados como Ken Thompson (uno de los creadores de Unix), Pike (responsable por el esquema UTF-8) y Robert Griesemer (creador del engine JavaScript de Chrome). Parece que además de plantarle cara a Microsoft con productos como Google Docs (competidor de MS Office), Gmail (enemigo declarado de Hotmail) y su nuevo sistema operativo (Chrome OS), han decidido pegarle a la empresa de Bill Gates donde más le duele, es decir, en los lenguajes de programación.

Se le a denominado 'Go', y es parecido a Phyton, un lenguaje de programación interpretado, que busca además la velocidad del clásico lenguaje C o C++. Según ha explicado el equipo de desarrollo, las creaciones típicas se hacen casi de forma instantánea mientras que los grandes binarios se compilan en segundos. Google ha lanzado el código fuente bajo licencia BSD para que la comunidad que forman los programadores puedan participar y así obtener una opción atractiva para el desarrollo del software. Porque aunque haya sido lanzado, aún es un lenguaje de programación que tiene mucho trabajo detrás, como la falta de integración IDE, las bibliotecas estándares son pequeñas, existen muy pocos códigos de ejemplo, así como tutoriales para su aprendizaje.

Ha sido desarrollado para dar respuesta a una tendencia que lleva a los ordenadores a ser cada vez más rápidos mientras que el desarrollo de software no se ha acelerado. También proporciona un modelo de construcción de software que facilita el análisis de dependencia y evita gran parte de la sobrecarga de la programación estilo C, incluidos archivos y binarios. El nuevo lenguaje toma lo mejor de lenguajes más antiguos y lo combina para lograr una nueva herramienta que promete revolucionar la forma en que escribimos los programas de ordenador. En Google dicen que este producto tiene como objetivo resolver algunos de los problemas que presentan los lenguajes de programación actuales, como el uso eficiente y sencillo de los microprocesadores multi núcleo o la generación de ejecutables enormes y pesados. Su sintaxis es muy similar a C, pero es más expresiva, puede resultar más rápido su uso, así como el momento de compilación, pero en el fondo, se trata de otro lenguaje de programación orientado a objetos. Este es un ejemplo de sintaxis :

package main
import “fmt”

func main() {
fmt.Printf(”Hello, ??\n”)
}

Actualmente el lenguaje de programación de Google, Go, solo se encuentra disponible para los sistemas operativos Mac OS X y GNU/Linux en la mayoría de sus distribuciones, siendo posible instalarlo en nuestro equipo siguiendo las instrucciones que se indican en la documentación. Los desarrolladores que usan Windows tendrán que esperar un poco más para poder programar bajo este nuevo lenguaje. Los compiladores nativos de Go, llamados 6g y 8g (para 64 bits y x86, respectivamente), están diseñados para ser extremadamente rápidos. También hay un compilador alternativo llamado Gccgo que se basa en la colección de compiladores de GNU (GCC). La base del compilador GCC no es tan rápido, sin embargo se dice que genera código más eficiente. No se utilizó el LLVM (de bajo nivel) ya que según Google no cumplía sus tiempos de rendimiento.

Actualmente hay una discusión sobre el nombre del lenguaje ya que existe otro lenguaje llamado Go!. La idea es que la gente de Google cambie el nombre de su lenguaje y han salido varias sugerencias como Goo, LanGo, Ogle, o Gone. Con este lenguaje, Google cubre otro sector más del mundo de la informática, y todo ello gracias al esfuerzo y trabajo de los ingenieros del laboratorio de Google, que por cierto, está a la cabeza mundial en innovación. El proyecto comenzó con un 20% del tiempo de sus ingenieros (en el que pueden dedicarlo a lo que deseen, sin ningún compromiso) y terminó ocupándoles todo el tiempo. Se dice que los grandes proyectos de Google han surgido de ese espacio de tiempo que tienen sus empleados, donde su creatividad aumenta con creces, y Go podría terminar siendo un ejemplo perfecto.

No hay comentarios:

Publicar un comentario