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]
