En/Je/On 2016-01-02 20:51, Marcos Cruz escribió / skribis / wrote :

> Investigando sus interioridades he descubierto algo raro.
> 
> http://programandala.net/es.texto.2016.01.02.palabras_superforth.html

El problema era las palabras originales del sistema usan un carácter
cero para alinear el nombre con el campo de código cuando es necesario,
mientras que las palabras creadas por el usuario usan un espacio, lo
cual tiene una explicación lógica.

El cálculo usado en `>name` era la causa de las direcciones incorrectas
en la tabla, pues solo saltaba un posible espacio, no un zero. Ahora
funciona en ambos casos:

----
: >name       ( cfa -- nfa )
  1- dup c@ 128 and 0= +  \ skip a possible padding
  -1 traverse  ;
----

La lista de palabras ya tiene el aspecto que cabría esperar.

-- 
Marcos Cruz
http://programandala.net

Responder a