Red de conocimiento informático - Aprendizaje de programación - El origen de la cuarta lengua

El origen de la cuarta lengua

Forth no se deriva de otros lenguajes de programación existentes, por lo que su apariencia y características internas son especiales para nuevos usuarios. Sin embargo, la simplicidad, el alto grado de modularidad y las características interactivas de Forth pueden compensar la falta de familiaridad de los principiantes, haciendo que Forth sea muy fácil de aprender y usar. Por lo general, a un nuevo programador le toma algo de tiempo dominar el vasto conjunto de comandos de Forth. Después de un mes de uso integral, los programadores pueden comprender todo su mecanismo de funcionamiento interno y aprender mucho más que los compiladores y sistemas operativos tradicionales.

La mayor diferencia entre Forth y los lenguajes tradicionales es la extensibilidad. El proceso de programación de Forth consiste en definir nuevas palabras, y las palabras son en realidad nuevos comandos para el lenguaje. Una palabra se puede definir mediante una serie de palabras previamente definidas, lo cual es similar al proceso de educar a los niños: siempre les enseñamos nuevos conceptos a los niños usando conceptos que han entendido previamente, y estas palabras se denominan "definiciones avanzadas". De manera similar, también se pueden definir nuevas palabras mediante código ensamblador y, dado que la mayoría de las implementaciones de Forth incluyen el ensamblador del procesador host, estas palabras se denominan palabras de código.

El resultado de la escalabilidad es que al desarrollar una aplicación, también desarrollamos indirectamente un "lenguaje orientado a aplicaciones" especial para este tipo de aplicación, que puede ser utilizado por aplicaciones o modificaciones similares.

La extensibilidad de Forth no se trata solo de agregar nuevos comandos al lenguaje en sí, por lo que no equipare las definiciones con las definiciones tradicionales de funciones y procedimientos del lenguaje de alto nivel. La extensibilidad también puede crear una palabra que puede definir otras palabras. Esta palabra se llama "palabra definitoria". Al crear una palabra definida de este tipo, el programador puede especificar un comportamiento especial para la palabra que crea en tiempo de compilación, tiempo de ejecución o ambos. Esta capacidad nos permite definir tipos de datos especiales y tener un control total sobre su comportamiento y estructura. Debido a que el comportamiento de ejecución de esta palabra se puede definir en un lenguaje de alto nivel o lenguaje ensamblador, las palabras creadas al definir la palabra tendrán el mismo rendimiento que otras palabras de Forth. Este sistema también nos permite agregar una nueva "directiva de compilación" para implementar tipos especiales de bucles u otras estructuras de control, como las estructuras CASE.