^[:Il | Messaggero := non: 'è importante']

Un blog de Giuseppe Luigi Punzi, sobre programación, sistemas, idas de cabeza, y mis cosas en general, porque un sitio debía tener…
  • rss
  • Inicio
  • Sobre mí…
  • Enlaces / Webs amigas
  • Artículos / Tutoriales
    • Aida/Web: Tutorial

Por qué Squeak/Smalltalk entonces?

glpunzi | 11 Marzo, Martes, 2008 | 10:41 am

Digamos que esta entrada es para complementar un poco la anterior en contestación a Pablo. Voy a comentar muy por encima Smalltalk y en mi línea (es decir, desordenado y faltando cosas :P).

Instalación y archivos.
Digamos que, una instalación de Squeak, y con unas definiciones cuestionables, cuenta de 4 archivos.

  • La máquina Virtual: Escrito en C, tiene el código mínimo para levantar una imágen.
  • El archivo .sources: Contiene el código en Smalltalk de todas las partes de Squeak que no suelen sufrir cambios a menudo.
  • Los archivos .image y .changes: .Image es una “criogenización” de todos los objetos del sistema, y .changes es un log de los cambios realizados en ésta.

Ya está. En Squeak, no se usan archivos fuente como tal. Están los changesets, que son trozos de código que pueden ser insertados en una imágen (File In), inclusive puedes usarlos para distribuir tu aplicación, pero no es la opción más acertada.

En Macos y Windows, la instalación es tan sencilla como colocar la VM en una carpeta, y asociar el archivo .image a ésta. O bien, arrastrando el archivo .image sobre el ejecutable (para que la abra como parámetro). Si ejecutamos la VM tal cual, buscará una imágen en su carpeta y la abrirá por defecto, si no encuentra ninguna, nos preguntará por una imágen a abrir.

Sigo sin entender el .image
Una imágen de Squeak, es un “mundo”. Es un entorno que ya lo lleva todo integrado. Es el IDE, el depurador, y la aplicación en sí misma a distribuir. Es un conjunto de objetos vivos que nos ofrece un amplio abanico de posibilidades para trabajar. Podríamos definirlo, como un sistema operativo sobre el que trabajamos, donde tenemos nuestros inspectores de clases, System Browser, Depurador, SUnit, e incluso, cliente de correo, servidor web, cliente IRC, VNC, etc………En este “mundo”, es donde creamos nuestros objetos, instancias de clase, y “enviamos mensajes”. Aquí, una clase, no es un archivo MiClase.extensión, que compilar y demás. En Squeak no hay ciclo de compilación. En todo momento estamos editando, compilando y ejecutando al mismo tiempo, ya que, como he dicho, es un entorno de objetos vivos que modificamos en tiempo real.

Imágen de Squeak-Dev

En la anterior imágen, se puede observar una imágen de Squeak, con un System Browser, navegando por la implementación del objeto True (si, porque aquí, True o False, son objetos que heredan de Boolean, y podemos modificarlos a placer), en el mensaje ifTrue:ifFalse: (condiciones en Squeak). Justo debajo, un WorkSpace (pequeño editor donde poder evaluar pequeños trozos de código), donde se está escribiendo una pequeña sentencia.

Control de Versiones, paquetes, etc..
En Squeak, existe el SqueakMap, una especie de catálogo de librerías/aplicaciones por internet. Desde éste, podemos buscar por el paquete irce (un cliente de irc integrado en la imágen), YAXO (que es un parser de xml), o Comanche (uno de los varios servidores web para Squeak) por poner simples ejemplos.
Squeakmap

Por otro lado también existe Monticello, que es el sistema de control de versiones de Squeak, y cómo no, totalmente integrado en la imágen.

Monticello

Y también existe Universes, aunque la definición prefiero dejarlar para vuestros traductores Inglés-Español. Éste además resuelve dependencias y demás.

Look & Feel

Éste es uno de los puntos que más echan para atrás a los nuevos. El UI de Squeak no es muy “profesional” a la vista digamos. Aunque hay esfuerzos que intentan mejorarlo día a día. Como por ejemplo:
UI enhancements

Por supuesto, hay mucho de lo que hablar, y no cabe en un sólo post. Para otro momento dejamos la persistencia, el desarrollo web y demás. Otro día más.

Mientras, dejo unos enlaces:
Blog en 15 minutos: Ramón Leon hizo un screecast donde nuestra como desarrollar un blog en 15 minutos en Squeak. Video altamente recomendable.

Seaside: FrameWork para desarrollo web.
DabbleDB: Una Base De Datos Online desarrollada en Squeak.

.

Entradas relacionados:

  1. GNU Smalltalk II
  2. Squeak 4 se construirá sobre Spoon
  3. GNU Smalltalk
  4. Squeak By Example: Segunda edición
  5. Eligiendo un “entorno” en el que desarrollar

Categorias
Programación, Squeak
Trackback
Trackback

« Por qué elegir …. (lenguaje)? Squeak By Example: Segunda edición »

Subscríbete

Categorías

  • Apple
  • Cosas Varias
  • English
  • Entropia Universe
  • Eve-Online
  • Flipando
  • Fotografia
  • Globals/HOFs
  • GumMurcia
  • HardWare
  • iPod/iPhone
  • Juegos
  • KDD
  • Lazarus/FPC
  • Lua
  • Mi Blog
  • Musica
  • Ocio
  • PovRay
  • Programación
  • Smalltalk
  • Squeak
  • Twitter
  • Videos Musicales
  • VTES
  • web

Archivos

  • Julio de 2008
  • Junio de 2008
  • Mayo de 2008
  • Abril de 2008
  • Marzo de 2008
  • Febrero de 2008

Comentarios recientes

  • Raton BT óptico recargable por USB | ^[:Il | Messaggero := non: 'è importante'] en KDD GUM Murcia: 22 de Febrero
  • …intermedio… | ^[:Il | Messaggero := non: 'è importante'] en InciGest: Software de Gestión de Incidencias
  • glpunzi en GNU Smalltalk
  • Alejandro en GNU Smalltalk
  • InciGest: Software de Gestión de Incidencias | ^[:Il | Messaggero := non: 'è importante'] en Aida/Web: Tutorial


Twitter

  • New blog post: Raton BT óptico recargable por USB http://tinyurl.com/583wm4 17 hrs ago
  • New blog post: "Me follo a Matt Damon" http://tinyurl.com/5dvhtj 1 week ago
  • New blog post: Iniciación a Vampire: The Eternal Struggle http://tinyurl.com/5z5xy5 2 weeks ago
  • New blog post: Squeak 4 se construirá sobre Spoon http://tinyurl.com/5ot65t 3 weeks ago
  • New blog post: Regreso al futuro de Smalltalk http://tinyurl.com/6gaaoq 3 weeks ago
  • More updates...

Posting tweet...



rss Comentarios RSS valid xhtml 1.1 design by jide powered by Wordpress get firefox