Zero

Zero
Zero

02 diciembre 2004

Conferencia en la EUITIO

Ayer impartí una charla en la EUITIO (Escuela Universitaria de Ingeniería Técnica de Informática de Oviedo) sobre Zero.

Las transparencias pueden encontrarse en la página de publicaciones.

Conferencia en la EUITIO sobre Zero.

08 octubre 2004

Conteo de referencias

Terminada y depurada la gestión de memoria en Zero (hasta el momento, símplemente, no funcionaba). Se trata de un sistema tan básico y ampliamente reconocido como el conteo de referencias. Ha pasado casi un año (exactamente, 11 meses), desde que la máquina virtual empezó a funcionar.

Se trata de que cada vez que una referencia se hace a un objeto, su conteo de referencias se incrementa en uno. Cuando una referencia se cambia o elimina, se decrementa en uno. Al llegar a cero, se elimina el objeto.

11 septiembre 2004

Ya hay vectores nativos

Añadido el soporte nativo para vectores; ahora la librería está totalmente completa, por el momento. La librería, eso sí, ya es totalmente congruente. Existen, "Int" (enteros), "Float" (flotantes), y "String" (cadenas) como "tipos de" datos nativos, además de las estructuras de datos "Map" (vector asociativo) y "Vector", la segunda también nativa (sólo por cuestiones de rendimiento).

31 mayo 2004

Ya hay enteros

Se añade el soporte para enteros (hasta ahora sólo flotantes) y se hace una revisión casi completa de la librería.

Librería estándar

Quedan ya pocas cosas que meter en la librería interna.

23 abril 2004

Zm funcional

Zero está ya completo (en cuanto al soporte básico), incluyendo el macrosenamblador, y la nueva versión del formato bytecode.


Quedan por soportar los vectores y pulir la librería, entre otras muchas cosas.


Empleo a Zero en las prácticas de la asignatura Tecnología de Objetos, que imparto.

25 febrero 2004

Zm

Empiezo a trabajar en Zm, un macroensamblador que haga la vida más sencilla a aquellos que quieran programar en Zero (¡incluyéndome especialmente a mi!). No es todavía un lenguaje, pero se le acerca ya bastante. Completo una segunda versión del bytecode, tratando de asegurarme que sea más portable.
Además, elimino el almacenaje de cadenas tipo Pascal, con la longitud delante y sin delimitador de final, po r otro tipo C, sin longitud delante y con un cero como final.

23 enero 2004

Zvm en un curso de doctorado

Zvm presenta ya una situación lo suficentemente estable como para poder ser utilizada en programas de ejemplo (a pesar de las carencias comentadas). Todavía no está implementado el almacenamiento persistente ni el control de memoria ni un mínimo sistema de optimización.
Empleo a Zero en un curso de doctorado. Lo cierto es que la aceptación es mucho mejor que lo esperada, teniendo en cuenta que los programas deben utilizarse desde línea de comando y que como editor emplearon el bloc de notas. Un ejemplo de sesión de trabajo:


$ za HolaMundo

Za Ensamblador Zero (Zero assembler) v1.0

$ zvm HolaMundo

¡Hola, mundo!

Por supuesto, la máquina virtual ya puede hacer más cosas (atributos, herencia ... etc.).