Universo Apple

Atención nostálgicos; La aplicación HyperCard de Apple y su legado

Atención nostálgicos; La aplicación HyperCard de Apple y su legado
PowerPC603e/100MHz e HyperCard, Installation Wikimedia Commons

HyperCard fue lanzado originalmente con el System Software 6 en 1987 y retirado definitivamente del mercado en marzo de 2004, aunque para entonces hacía muchos años que no se actualizaba. HyperCard corre nativamente sólo en Mac OS versiones 9 y anteriores según wp, pero puede usarse aún en el modo Classic de Mac OS X.

HyperCard fue una aplicación informática de Apple Computer que se contó entre los primeros sistemas hipermedia con éxito anteriores a la World Wide Web. Conceptualmente se acerca a una base de datos, pues almacena información, siendo además gráfico, flexible y capaz de crear ficheros fáciles de modificar. También incluía HyperTalk, un lenguaje de programación potente y relativamente fácil de usar, para manipular los datos y la interfaz de usuario. Los usuarios de HyperCard lo usaban a menudo como un sistema de programación para el desarrollo rápido de aplicaciones más que como base de datos.

HyperCard está basado en el concepto de una «pila» de «tarjetas» virtuales. Las tarjetas contienen datos, como lo harían en un rolodex. El motor de presentación era parecido en concepto a un «formulario» de los usados en la mayoría de los entornos de desarrollo rápido de aplicaciones (RAD), como Borland Delphi o Visual Basic. Una pila especial «home» estaba disponible como lanzador, repositorio de scripts compartidos y ubicación de las preferencias de usuario.

HyperCard no era sólo un motor de base de datos: la apariencia de cada tarjeta podía modificarse, de la misma forma que puede escribirse información no estándar sobre las tarjetas de un rolodex o libreta de direcciones. Una capa de fondo especial de cada pila contenía elementos que aparecían en todas las demás tarjetas de la misma pila, o en todas las tarjetas basadas en dicho fondo. Los fondos podían incluir imágenes (que era su propósito inicial), además de los objetos también disponibles para las demás tarjetas: campos gráficos, botones, texto (estático), campos de texto (editable) y otros elementos típicos de las GUIs. Cada tarjeta podía entonces contener datos diferentes asociados a los campos de texto o gráficos, creando de esta forma la funcionalidad de base de datos.

Por ejemplo, una libreta de direcciones podía confeccionarse añadiendo al fondo unos cuantos campos de texto para contener el nombre y la dirección. Tras esto, el usuario puede añadir nuevas tarjetas (tecleando Command-N) y rellenar los campos. El fondo puede ser modificado en cualquier momento, permitiendo que los cambios fueran fáciles de hacer. Los operaciones básicas como búsqueda, adición y borrado estaban integradas en el entorno de HyperCard, permitiendo que las bases de datos simples fuesen configuradas y usadas por cualquiera capaz de usar un ordenador Macintosh.

La capacidad de escribir scripts en el lenguaje HyperTalk permitía que el sistema fuese fácilmente modificable y extensible. A diferencia de muchos lenguajes de script, HyperTalk demostró ser usable por un amplio rango de usuarios: su sintaxis incluía múltiples versiones de cada sentencia, todas ellas en un inglés más o menos legible. Por ejemplo, put the first word of the third line of field «hello» into field «goodbye» (‘poner la primera palabra de la tercera línea del campo «hola» en el campo «adiós»’) haría exactamente lo que se espera. HyperTalk incluía esta redundancia con la esperanza de facilitar la programación: por ejemplo, los números podían especificarse usando dígitos (1, 2), cardinales (one, two) u ordinales (first, second).

Referirse a los objetos y elementos de las tarjetas y fondos era fácil. El anterior ejemplo ilustra cómo se accedía a un campo en una tarjeta particular, pero podía hacerse con cualquier objeto de la misma forma, incluyendo a la propia pila. Todos los objetos podían nombrarse, como en el ejemplo anterior. Además, cada objeto (incluyendo la propia pila) tenía una clave numérica.

El comando find (‘hallar’) de HyperCard navegaba rápidamente a las tarjetas que contenían el texto buscado usando el método patentado llamado hintBits. Esto podía acotarse con modificaciones tales como find «Bob» in card field «hello» (‘hallar «Bob» en el campo de tarjeta «hola»’). De forma parecida, había un comando sort (‘ordenar’) que permitía evaluar expresiones completas para clasificar las tarjetas según un orden.

Añadir scripts también era fácil. Bastaba simplemente con «command-option-clicar» sobre cualquier elemento de la pila (o pulsar el botón Script en el diálogo de propiedades del elemento) para abrir un editor. En él podía editarse, salvarse y usarse inmediatamente el script. Además, HyperCard contenía la «caja de mensajes», una línea de comandos interactiva en una ventana flotante que podía ejecutar líneas simples de script, incluyendo el comando find, por lo que servía también como diálogo de búsqueda. HyperCard 2.0 añadió un depurador.

HyperTalk fue lo suficientemente popular como para que uno de sus usos principales no fuese el de base de datos sino el de herramienta de programación. Miles de «pilas» fueron escritas y distribuidas como stackware en los pocos años en los que HyperCard tuvo amplia difusión.

Autor

elduendesuarez

elduendesuarez es un compositor, músico, cantante, escritor y director de cine español. Entusiasta de las nuevas tecnologías, en todas sus formas y presentaciones. El futuro ahora mismo, al alcance de tu mano.

Recibe nuestras noticias en tu correo

Experto
elduendesuarezTecnología

elduendesuarez es un compositor, músico, cantante, escritor y director de cine español. Entusiasta de las nuevas tecnologías, en todas sus formas y presentaciones. El futuro ahora mismo, al alcance de tu mano.

Lo más leído