Hola a todos: aprovechando el final del curso he podido dedicar un poco de
tiempo a mi implementación de Forth. Quería un Forth con una ligera
sobrecarga de operadores de forma que pudiesen coexistir en la pila enteros
y reales, pensando en cálculo científico. En una primera fase he
implementado sólo enteros, y ahora, con el núcleo (creo que) bien depurado
y todo funcionando, la extensión a reales será fácil. Pero no es esto lo
que quería comentar.

Desde siempre se ha dicho que Forth fuerza la programación de abajo hacia
arriba. Es el estilo natural para este lenguaje y el que recomiendan los
que saben. Sin embargo, me he dado cuenta de que por la carencia de
elementos sintácticos que distraigan, la programación de arriba hacia abajo
es más natural en Forth que en otros lenguajes, porque el código que se
escribe, teniendo aspecto de pseudocódigo, es realmente código Forth listo
para ejecutarse. Luego, cuando se ha descendido lo suficiente, se puede
enlazar desde abajo hacia arriba. Esto tiene un beneficio adicional muy
importante: el ruido de pila queda confinado en los niveles más bajos, y en
el nivel alto no queda rastro de él. Ciertamente, una factorización bien
hecha desde abajo puede conseguir el mismo efecto. Pero, para un
programador corriente, como yo, esto se consigue más fácilmente empezando
desde arriba.
Empiezo a pensar que el buen programador de Forth no es el que domina la
pila, y puede escribir código que la manipule al vuelo. Empiezo a pensar
que el buen programador de Forth es aquél que necesita muy poco luchar
contra la pila.

¿Qué pensáis de esto?

Saludos.
Javier Gil.


[Se han eliminado los trozos de este mensaje que no contenían texto]

Responder a