Historial de desarrollo en 2013 del proyecto Asalto y castigo en Forth
Descripción del contenido de la página
Historial de desarrollo durante 2013 del proyecto de la versión en Forth del juego conversacional Asalto y castigo.
2013-09-26
Revisión del estado del código.
2013-09-28
Corregido el fallo que impedía encontrar el fichero de configuración si no se ejecutaba el programa desde su directorio. Para ello se ha escrito la palabra sourcepath
en la librería Galope; devuelve el directorio del fichero que está siendo interpretado, que será añadido después al fichero de configuración:
sourcepath 2constant path$
: config_file$ ( -- a u )
\ Fichero de configuración.
path$ s" ayc.ini.fs" s+
;
Corregido el fallo que se producía cuando en el primer comando no había una acción reconocible y en la configuración estaba puesto que en estos casos se repitiera la acción anterior. El motivo era que la variable previous_action
seguía siendo cero. Un nivel adicional de comprobación lo arregla:
: (execute_previous_action) ( -- )
\ Ejecuta la acción previa, si es posible
\ (no es posible la primera vez, cuando su valor aún es cero).
\ xxx otra solución posible: inicializar la variable con una acción que nada haga.
previous_action @ ?dup if (execute_action) then
;
: execute_previous_action ( -- )
\ Ejecuta la acción previa, si así está configurado.
repeat_previous_action? @
if (execute_previous_action) else no_verb_error# ?wrong then
;
2013-09-29
Eliminadas del código las partes obsoletas que ya habían sido anuladas tras crear con ellas módulos de Galope.