Notxor tiene un blog

Defenestrando la vida


Lout, un lenguaje de marcas ligero

Hace unos años, allá por el 2002-2003, me dio por intentar estudiar criminología. Vivía entonces en Jerez de la Frontera, que era precisamente donde la Universidad de Cádiz impartía esa carrera. Para matricularme me convenció un compañero, y sin embargo amigo, que venía desde Puerto Real y asistimos a clase sin faltar un solo día, hasta que yo me vine a Zaragoza por motivos de trabajo y él, habiéndose «solo» lo fue dejando.

Recuerdo esto, porque rebuscando entre trastos viejos encontré los apuntes de Medicina Legal. Las horas que le eché a pasar a limpio e incluso hacer los dibujos a mano y luego escanearlos. Esos apuntes se convirtieron en los más fotocopiados del curso, del mío y de por lo menos el posterior, según me contaron algunos compañeros que continuaron los estudios. Al encontrar esos apuntes me acorde de cómo los hice.

Entonces, mi ordenador era muy limitado, no tenía mucha capacidad y una instalación de LaTeX no entraba. Estuve buscando cómo hacer para pasar mis apuntes sin recurrir al Güor del güindón que tenía en el trabajo. En mi ordenador de casa no había ninguna suit ofimática, creo que tenía instalada una Debian o una Mandrake: en aquella época era cuando más trasteé probando distros.

Mi salvación vino de Lout: un lenguaje de marcas diseñado para formatear documentos que diseñó Jeffrey Kingston en la Universidad de Sydney, en Australia. Hoy me lo he vuelto a descargar, pensando que no compilaría. En OpenSuse está en el repositorio, pero me acuerdo que en aquel entonces me lo tuve que compilar. Lo he descargado, la friolera de 2Mb, y, contra todo pronóstico, lo he compilado e instalado en mi directorio personal.

Recuerdo que estaba muy limitado en cuanto a opciones: apenas unos pocos tipos de letra, apenas unos pocos tipos de documentos1, no hay extensiones que hagan otra cosas. Sin embargo, los ficheros de configuración eran muy fáciles de modificar y de ajustar al documento que querías generar.

Tampoco era una sintaxis demasiado clara, hasta que te acostumbras, porque hay muchas palabras y códigos que inician y terminan bloques de información, anidadas unas dentro de otras y algunas veces era arduo saber exactamente dónde podías dividir o insertar o unir. El código era del estilo:

# Esto es un comentario

# Utilizar el tipo de documento «doc» con su estilo por defecto
@SysInclude { doc }

@Document
  @InitialFont { Times Base 10p }
//

# Aquí comienzan los contenidos del documento
@Text @Begin

@PP
En este párrafo se puede utilizar por ejemplo el tipo en @B { negrita }
o en @I { itálica }. También se podía cambiar el tipo de texto con de la
siguiente manera: { Helvetica Base } @Font { este texto se mostrará en
Helvetica }.

@BeginSections
@Section @Title { Primera sección }
@Begin

@PP
Un parrafo que es el contenido de la sección, aunque también lo podríamos
dividir en sub-secciones.

@End @Section
@EndSections

@End @Text

Una de las particularidades de ese sistema es, como en Haskell, la forma de evaluar las expresiones de forma perezosa y que la salida suele ser postscript, porque la salida a pdf era muy limitada2.

Conclusión

No hay mucho más que contar, sólo ha sido un ataque de nostalgia... pero no descargo utilizarlo para algún proyectillo, nunca se sabe.

Nota al pie de página:

1

Sólo doc, report, book y slides.

2

Esta última versión no he probado aún la generación de documentos y es posible que hayan mejorado.


Comentarios