Forja

Programa en Dash sin salir del Amiga.

Forja es un entorno de desarrollo para Dash que corre en el propio Amiga. Escribes con colores, compilas y ejecutas con una tecla, depuras paso a paso y dibujas ventanas con MUI de verdad. Todo en una ventana MUI con fondo negro.

dash-2.0.1-amiga.lha · 2,8 MB · Forja va dentro, en el cajón Dash/Forja

Es una versión de prueba: funciona en el emulador, pero aún no se ha probado en un Amiga de verdad.

Así se reparte la ventana. Es el esquema del plan de Forja, no una captura.

Todo en una ventana

Forja abre una sola ventana MUI con fondo negro. Habla en castellano o en inglés, según el idioma de tus Preferencias de Locale.

El editor
Colorea el código según la sintaxis de Dash y lleva números de línea y puntos de parada. Tiene pestañas, deshacer y rehacer, buscar y cambiar, y cortar, copiar y pegar con el portapapeles del sistema.
El proyecto
A la izquierda, los ficheros del cajón: un clic y se abren. Al depurar, también la pila y las variables.
La salida
Abajo salen los errores del compilador. Un clic en uno te lleva a su línea.
Los botones
Compilar, Ejecutar y Depurar. Al depurar, en su sitio salen Seguir, Paso, Entrar, Salir y Parar: todos a la vez no caben en una pantalla de 640 píxeles.
Inferencia
Un botón manda el fichero, o las líneas elegidas, a Inferencia, la IA para el Amiga. Si no está abierta, la arranca.
Lo de la última vez
Sin fichero, Forja abre lo que tenías abierto. Se puede quitar en Preferencias.

Con el teclado

El teclado va al editor cuando el puntero está encima. Las flechas mueven; con Mayúsculas, eligen. Con Alt, al principio y al final de la línea, y página arriba y abajo. Con Ctrl, de palabra en palabra y al principio y al final del texto. Tab y Mayúsculas+Tab sangran.

Si cierras un fichero con cambios sin guardar, pregunta antes.

Depurador paso a paso

Amiga-G o F5 arranca el programa en el depurador. Pones un punto de parada con F9 o con un clic en el margen. Cuando para, ves a la izquierda la pila de llamadas y las variables.

  • F5Seguir
  • F10Paso
  • F6Entrar
  • F7Salir
  • F9Punto de parada

Cómo lo hace: el programa se compila con una tabla de sus líneas y sus variables, y un punto de parada es una instrucción TRAP en su línea, sin el bit de traza. Por eso funciona también en Emu68, en una PiStorm. Mientras espera, la ventana de Forja no se queda congelada.

Un límite de ahora: si una tarea lanzada con task_start pasa por una línea con punto de parada, se cae.

Ventanas con MUI de verdad

Los ficheros .dashui, las ventanas de Dash, se abren en el editor de ventanas. A un lado, el árbol de objetos; al otro, las propiedades del que elijas. "+" añade un objeto, Supr lo quita y Alt con las flechas lo mueve. Amiga-D enseña el fichero como texto.

Amiga-P abre la vista previa, y es la ventana MUI real, montada a partir del fichero mientras lo editas. Lo que ves es exactamente lo que saldrá. La extensión de VS Code, en Linux, tiene que imitar MUI con HTML; aquí no hace falta.

Guarda los ficheros igual que la extensión de VS Code, así que puedes empezar una ventana en el PC y acabarla en el Amiga. La extensión de VS Code, en la web de Dash

Con Inferencia al lado

Inferencia es la IA para el Amiga: hablas con un modelo de lenguaje y el modelo puede leer y cambiar tus ficheros, siempre preguntando antes. Con Amiga-I, Forja le manda el fichero o las líneas elegidas. Si Inferencia no está abierta, Forja la arranca.

Cuando Inferencia cambia un fichero que tienes abierto en Forja, el cambio entra en el editor: queda sin guardar y lo puedes deshacer con Amiga-Z.

Conoce Inferencia

Se maneja por ARexx

Forja abre el puerto FORJA.1, para Inferencia y para quien quiera. Las órdenes:

ABRIR fichero [línea]
Abre el fichero, y va a esa línea.
ABIERTO fichero
1 si está abierto en una pestaña.
TEXTO fichero
Lo que hay en el editor, guardado o no.
SELECCION
El fichero, las líneas y el texto elegido.
CAMBIAR fichero desde hasta texto
Cambia esas líneas. El cambio se puede deshacer.
GUARDAR [fichero]
Guarda.
COMPILAR y EJECUTAR
Sin esperar a que acaben.
ESTADO
Si sigue compilando o ejecutando.
ERRORES
Los errores de la última compilación.
BUSCAR texto
Lo elige y dice en qué línea está.
CAMBIARTODO buscar cambiar
Cambia todos y dice cuántos.
IRA línea
Va a esa línea.

Lo que necesita tu Amiga

  • AmigaOS 3.0 o mejor, con un 68020 o mejor.
  • MUI 5.
  • El compilador de Dash: la orden dash, que pone el instalador de Dash 2.0.1. Si la tienes en otro sitio, dile dónde en las Preferencias de Forja (se guarda en ENV:Forja/dashc).
  • El botón Inferencia necesita Inferencia, que viene en el mismo paquete.
  • Los colores del código se ven mejor con más de 4 colores en la pantalla.

Forja aún no tiene versión propia: viene dentro de Dash para el Amiga. Descomprime dash-2.0.1-amiga.lha y haz doble clic en Instalar. Deja el cajón Dash donde elijas y añade el Assign DASH: y el Path a S:User-Startup. Forja está en Dash/Forja: doble clic en su icono, o Forja fichero en un Shell.

Versión de prueba

Forja funciona en el emulador y pasa todas sus pruebas. Antes de su primera versión propia falta:

  • Probarla en un Amiga de verdad, con un 68020 a 14 MHz y con algo más rápido (68030, 68060 o una PiStorm con Emu68).
  • Que alguien de habla inglesa repase el catálogo en inglés.
  • Su propio paquete en Aminet, con capturas.
Si algo falla, cuéntamelo en GitHub

Hecho en Dash

Forja está escrita en Dash 2.0, sin una línea de C: son casi 3.900 líneas de Dash. El editor se dibuja sobre un lienzo de MUI, con sus propios colores. Lo que Forja necesitaba y Dash no tenía (el depurador, las ventanas .dashui en marcha y las órdenes ARexx en un programa MUI) se añadió al propio Dash, así que cualquier programa puede usarlo.

Descubre Dash