Cuando os presenté Dash, acabé la entrada con una lista de promesas. Una extensión para VS Code. Un diseñador visual de ventanas MUI. Depurar sin salir del editor. Y, sobre todo, aplicaciones de verdad para el Workbench.
Hoy vengo a contaros que esas promesas ya se pueden descargar.
Y que he hecho algo que no estaba en la lista: he escrito un navegador web para el Amiga con Dash.
Recordatorio rápido: qué es Dash
Dash es un lenguaje de alto nivel para el Amiga. Se escribe como Ruby o Python. Por debajo se traduce a C y se compila en el PC a un ejecutable nativo de 68k.
El Amiga no necesita intérprete ni máquina virtual. Recibe un programa normal, y además pequeño. Una ventana con su bucle de eventos ocupa unos 5 KB. Una ventana MUI con botones ocupa 9,1 KB.
La extensión de VS Code ya existe
Se llama «Dash for Amiga» y va por la versión 0.2.1. Esto es lo que hace:
- Colorea el código y marca los errores mientras escribes.
- Autocompleta, salta a la definición y formatea el código.
- Compila y lanza el programa en FS-UAE o en Amiberry.
- Depura con F5. También en un Amiga real, por la red.
Y trae el diseñador visual de ventanas MUI que os prometí. Colocas los objetos en la ventana y la extensión escribe el código Dash por ti. Se acabó calcular coordenadas a ojo.

El lenguaje ha crecido mucho
En aquella primera entrada Dash tenía 161 funciones integradas. Hoy tiene 581.
- Interfaz: Intuition, GadTools, ReAction y ahora también MUI 3.8 y 5.
- Gráficos: Copper, Blitter, sprites, doble búfer, tarjetas gráficas e imágenes IFF, PNG, JPEG o GIF.
- Red: TCP, UDP y HTTPS con AmiSSL 5.1.
- Lenguaje: structs con métodos, lambdas, listas y diccionarios con tipo, y números Float y Fixed 16.16.
La memoria se gestiona sola, por contador de referencias. No hay recolector de basura que pare el programa.
La prueba de fuego: un navegador
Un lenguaje se demuestra escribiendo algo grande con él. Así que me puse a escribir un navegador.
Tachyon abre webs por HTTPS, entiende CSS moderno y ejecuta JavaScript. Tiene más de 28.000 líneas de Dash. Cada cosa que el navegador necesitaba y el lenguaje no tenía, se la he añadido a Dash. Red, TLS, fuentes, imágenes. Todo eso ahora lo tenéis también vosotros.
El segundo programa es más pequeño. Trasfondo es un monitor de recursos que se pinta en el fondo del Workbench. No lleva ni una línea de C escrita a mano.
A los dos les dedico su propia entrada.
Pruébalo en una tarde
Necesitas un PC con Linux, macOS o WSL2. Hacen falta Python 3.10, la librería Lark y el compilador cruzado m68k-amigaos-gcc. En el Amiga basta AmigaOS 3.0 y un 68000. MUI y HTTPS piden un 68020.
La forma más rápida de empezar es el tutorial en vídeo:
Dash es software libre con licencia MIT. Si escribes algo con él, quiero verlo. Y si algo falla, abre una incidencia en GitHub ;-)