29 sept 2013

Closures en Go

Animado por +Antonio Ognio durante un viaje Lima-Ica en el que nos encontramos por azar, estoy dando mis primeros pasos en Go, el lenguaje de programación de la familia de C creado por Google.
En eso de revisar la sintaxis y echar algunas líneas de código ultra básico, llegué al tema de "closures". Googleando sobre el asunto, llegué a escribir este ejemplo que creo sirve para explicar bastante bien el como se implementan en Go:

En Go, los closures se implementan a través de funciones anónimas. En el ejemplo, func() int indica que estamos declarando una función (1) sin nombre, por lo tanto anónima, (2) sin parámetros, por los paréntesis vacios, y (3) que retorna un entero.
En el cuerpo de la función estamos manipulando la variable a cuya declaración pertenece al ámbito en el que se está declarando la función anónima, a no es una variable local a la función.

También podemos ver que la función anónima ha sido asignada a la variable double, es decir double se comporta con un apuntador a la función anónima y nos servirá para invocar la función que, como dije, no tiene nombre.

Finalmente, invocamos a la función a través de la variable double y vemos el efecto en los comentarios. Los resultados nos indican claramente que la función anónima guarda una referencia a la variable a, incluso luego que es invocada por primera vez y ha retornado.

La promesa del lenguaje es que ésta referencia seguirá siendo válida en tanto sea posible invocar a la función anónima.

Espero que esta breve explicación les resulte de utilidad, yo seguiré explorando este lenguaje que me parece muy interesante sobre todo por la sintaxis parecida al C y porque contiene muchos conceptos modernos de los cuales espero escribir pronto.

11 abr 2013

Escritorio Movistar para Linux

Acabo de instalar el Escritorio Movistar en Ubuntu Linux, las instrucciones que funcionaron para mí en Ubuntu 11.10 son estas:
  1. Necesitas estar conectado a Internet por algún otro medio. Si sabes de dónde descargar estos paquetes para instalarlos offline, házmelo saber en los comentarios.
  2. Utiliza un navegador para descargar la clave de autenticación tgcmlinux.gpg
  3. Abre la aplicación Orígenes del software situada en el menú de Sistema > Administración > Orígenes del Software 
  4. Selecciona la pestaña Autenticación y haz clic en el botón Importar, indica la ruta al archivo descargado en el paso 2.
  5. Luego de la importación, haz clic en la pestaña Software de terceros  y luego en Añadir. Digita la siguiente línea: 
  6.  deb http://soportelinux.tgcm.info/repo/ubuntu stable main 
    Es necesario que tengas seleccionado el repositorio de Universe de la distribución Ubuntu.
  7. Luego abre el Gestor de paquetes Synaptic. Utiliza el botón de busqueda para ubicar el paquete escritorio-movistar-peru. Haz clic derecho sobre el paquete y elige Marcar para instalar. Presiona el botón Aplicar de la barra de Synaptic.
  8. Ahora sí, utiliza Ubuntu Software Center para instalar Escritorio Movistar. Selecciona el paquete e instala. 
  9. Finalmente, ubica Escritorio Movistar dentro de Aplicaciones y a navegar.
No es concluyente, pero hasta el momento la navegación desde Ubuntu Linux va mejor que desde el sistema operativo de las ventanas.