Unidad
de tratamiento de hiperlistas.Versión libre Beta 1.1,2005.
El objetivo de esta unidad es el de dotar al lenguaje Pascal de tipos de variables y rutinas para el fácil tratamiento de listas y/o sublistas.
Partiendo de una lista principal, o masterlist, podemos insertar elementos simples llamados átomos de carácter alfanumérico o binario; igualmente podemos insertar sublistas cuyos elementos pueden ser más átomos, más sublistas o simplemente pueden ser listas vacías. También posee funciones para indexar elementos de la lista para luego eliminarlos del índice principal de la masterlist pudiendo generar elementos indexables no presentes en la masterlist : otras listas o átomos (realmente solo el índice del nodo) almacenados en memoria; el objetivo final de esto es dar servicio a listas de usuario. La librería integra un sistema de navegación por las sublistas basado en una pila (también se pueden usar pilas de usuario).
A grandes rasgos, esta librería pretende ser una herramienta de programación que evite o simplifique en la medida de lo posible métodos de programación farragosos y de estructura difícilmente actualizable (punteros, matrices, vectores, listas en el sentido de Pascal) por otro sistema de programación para el almacenamiento de datos en memoria más dinámico, la hiperlista. Entendiendo la hiperlista como lista en el lenguaje Lisp. La unidad en principio no está dotada de marcador para átomos evaluables, aunque es muy fácil implementarlo e incluso puede que este el fuente comentado en su versión de la unidad.
La librería incluye, además de las rutinas elementales imprescindibles para trabajar con hiperlistas, rutinas para inserción/salvado de átomos binarios asi como compatibilidad con Lisp(v1.3) a la hora de salvar/recuperar en/de unidades de almacenamiento las listas generadas bajo esta unidad. Por defecto se incluye un sistema de grabación de la hiperlista cargada en memoria , con lo que salvar elementos multimédia como imágenes, sonido o texto es muy fácilmente implementable, así como recuperarlos. Se permite en este formato el salvar (encriptadas o no bajo una llave que genera el programador que usa esta unidad) varias listas en un mismo archivo así como recuperarlas por separado. Nótese que por conforme está establecido el diseño de grabación, puede integrarse al final del binario del programa.
<