Contenidos seleccionados de Forth Dimensions

Descripción del contenido de la página

Contenidos seleccionados de mi colección de Forth Dimensions.

Etiquetas:

Notas

A lo largo de los años he ido marcando las páginas de cada ejemplar de mi colección de Forth Dimensions en que había un artículo, un programa o incluso una simple cita o un pequeño ejemplo de código, que me llamaba la atención y quería tener localizado para volver a leerlo o consultarlo. Así, casi de cada ejemplar de la revista sobresalen varias notitas amarillas con anotaciones a lápiz: un método de catalogación tan pre-informático como eficaz.

Tanto para conservar para mí mismo la selección de contenidos que he ido haciendo a lo largo de años, como para ofrecerla por si a alguien le resulta útil, la he transcrito en esta página en forma de tabla (menos entrañable que las notitas amarillas, pero más útil).

En la página de Forth Interest Group están disponibles todos los números de Forth Dimensions digitalizados en formato PDF.

En la columna FD de la tabla indico la localización del contenido, con el formato volumen-número-página.

FD Título Autor Comentario
1-3-24 DTC versus ITC for FORTH on the PDP-11 David J. Sirag Una buena explicación de las diferencias entre los Forth implementados con código enhebrado directa e indirectamente; ventajas e inconvenientes de cada sistema.
1-3-30 D-charts Kim Harris Detallada explicación sobre los gráficos de diseño de algoritmos D-charts.
1-3-60 FORTH, the last ten years and the next two weeks Charles H. Moore Transcripción de una conferencia de Charles Moore, el inventor de Forth, en octubre de 1979 en FORTH Convention, San Francisco. Es una delicia leer la historia de Forth narrada por su autor. El texto incluye muestras de código en ALGOL, BALGOL, PL/1 y COBOL con que Moore implementó los primeros bocetos de lo que llegaría a ser Forth. Las opiniones y predicciones de Moore en 1979 son dignas de ser leídas en 2009. En mi opinión Charles Moore es un genio; y de esos pocos auténticos: de los que van a lo suyo y navegan contracorriente.
10-1-5 Open letter to Standards Committee Gary Chanson Interesante carta sobre la necesidad o no de un estándar, seis años antes de la publicación de ANS Forth.
10-1-6 Code for local variables Michael Barr Un pequeño ejemplo de cómo implementar variables locales (tema recurrente en Forth) con un par de palabras en ensamblador.
10-1-8 Locating Forth words Gene Thomas Palabras para localizar palabras en los códigos fuente.
10-1-19 Hearderless local variables and constants John P. Daucherty Implementación de variables y constantes locales sin cabecera en F83.
10-1-27 NUF? M. Hawley Un par de definiciones de la palabra NUF?.
10-2-7 Visible Forth (with no exceptions) Chris McBrien Revisión de un programa en Forth -79 llamado DISFORTHER, adaptado del manual de usuario de Forth 9835 de Hewlett Packard; como su nombre indica, muestra la composición y el tipo de una palabra de Forth.
10-2-15 Object-Oriented Forth Rick Hoselton Implementación de programación orientada a objetos para el sistema F83.
10-2-20 Step-tracing in fig-Forth Gene Thomas Implementación de un depurador del tipo «paso a paso» para sistemas fig-Forth.
10-3-5 Convenient extra stack Victor H. Yngve Sencilla implementación de una tercera pila en Forth-83.
10-3-12 WISC and the Forth dilemma Glen B. Haydon Interesantísimo articulo del presidente de WISC Technologies, presentado en la Rochester Forth Conference de 1988, sobre las virtudes de Forth en entornos de desarrollo profesionales, así como los motivos de su falta de aceptación.
10-3-15 Using a string stack (1) Ron Braithwaite Implementación de una pila para cadenas de texto en Forth-83.
10-4-30 Using a string stack (2) Ron Braithwaite Implementación de una pila para cadenas de texto en Forth-83.
10-4-26 Designing data structures (3) Mike Elola Tercera parte, y la más interesante, de un artículo sobre la implementación de estructuras de datos en Forth.
10-5-5 Local variables revisited Henning Hansen Interesante y sencilla implementación de variables locales.
10-5-5 String stack and F-PC Ron Braithwaite Nota la adaptación a F-PC del código del artículo Using a string stack, publicado en los volúmenes 10-3 y 10-4, por el mismo autor.
10-5-5 Label types for faster debbugin Douglas Hvistendahl Propuesta para nombrar con ciertas letras y signos, a modo de prefijos, los diferentes tipos de palabras (variables, constantes, matrices...) y así facilitar la lectura y la depuración del código.
10-5-6 Formatting source code Glen B. Haydon Propuesta para comentar el código fuente al revés de lo que se hace normalmente: marcar lo que es código en lugar de lo que es un comentario. Incluye artículo con la argumentación y dos palabras de código para hacer la implementación para Forth -79 y F-PC.
10-5-30 Time keeping routine Peter Verhoeff Una utilidad para registrar la duración de las sesiones de trabajo. Está escrita para F83.
11-1-13 Local variables and arguments Jyrki Yli-Nokari Implementación de variables y parámetros locales con una sintaxis similar a la de los parámetros de ficheros BAT de MS- DOS. Para F83.
11-1-18 Locals variables. Another technique John R. Hayes Una implementación de variables locales que usa una sintaxis poco común. Para F83.
11-1-27 Forth needs three more stacks Ayman Abu-Mostafa Artículo que argumenta las ventajas de implementar tres pilas adicionales en Forth para usos específicos.
11-3-23 Search order structure Chester H. Page Una alternativa al sistema tradicional de configuración del orden de búsqueda en el diccionario del sistema, para Forth-83
11-3-24 The challenge of sorts FIG Convocatoria de un concurso de programación de algoritmos de ordenación; contiene explicaciones interesantes y ejemplos de código.
11-4-8 PICK and ROLL John R. Hayes Definiciones en Forth de las palabras PICK y ROLL.
11-4-10 Fibonacci random number generator Nathaniel Grossman Ejemplo de implementación de un generador de números aleatorios
11-5-5 QickSort in F-PC Jose Betancourt Algoritmo QuickSort para el sistema F-PC
11-5-28 Jack J. Woehr Seeing Forth Artículo extraído de un libro entonces en desarrollo, de mismo título; contiene una cita interesante de Charles Moore sobre el lenguaje Forth
11-6-23 ANS Forth hardware independence John R. Hayes Artículo sobre cómo programar en ANS Forth código que funcione en sistemas con diferentes tamaños de celdas de memoria y restricciones de acceso a la misma.
17-1-6 Debuging ANS Forth Joerg Plewe Depurador escrito en ANS Forth.
17-2-25 Code size, abstraction & factoring John Wavrik Reflexión sobre el tamaño de los programas y la reutilización del código.
17-3-6 Sets, stacks, and queues Marty McGowan Implementación de conjuntos, pilas y colas en ANS Forth.
17-4-6 Forth in the HP100LX M. Edward Borasky Comparativa de la ejecución de diversos sistemas Forth en la computadora de bolsillo HP100LX.
17-4-13 Hashing Forth Xan Gregg Implementación de la técnica de desmenuzado en la indexación de datos, en ANS Forth.
17-4-19 RETRY, EXIT, and word-level factoring Richard Astle Implementación de las palabras RETRY y EXIT para controlar el flujo interno de una palabra, en ANS Forth.
17-4-36 Associative Lists Wil Baden Implementación de listas de datos relacionadas, en ANS Forth.
17-5-16 Stock definitions Wil Baden Lista de definiciones variadas, en ANS Forth, perteneciente al artículo All the standard Forth you need.
17-5-24 ANSI.SEQ Skip Carter Código para compatibilizar con ANS Forth el sistema F-PC.
17-6-21 Differential file comparation Wil Baden Código para comparar dos ficheros y mostrar sus diferencias, en ANS Forth.
18-1-5 A Forth history Philip R. Monson Carta al director que narra la trayectoria personal y profesional del autor en relación con el lenguaje Forth, desde su escepticismo inicial hasta su total convencimiento.
18-1-36 LIFE that knows when to stop Wil Baden Implementación en ANS Forth de un Juego de la vida que detecta el ciclo final.
18-2-6 Circular string buffer Wil Baden Implementación en ANS Forth de un búfer circular de texto.
18-4-5 Towards a discipline of ANS Forth programming M. Edward Borasky Artículo sobre programación estructurada, e implementación en hForth de las estructuras de control de Dijkstra.
18-4-15 C-style arrays in Forth M.L. Gassanenko Implementación en F-PC de matrices similares a las del lenguaje C.
18-4-27 Filters and sponges Wil Baden Implementación en ANS Forth de filtros para modificar el contenido de ficheros.
18-5-8 Garbage collection in Forth Jim Schneider Programa en ANS Forth para gestionar la memoria utilizada; incluye una definición de la palabra VOCABULARY.
18-6-6 Fuzzy Forth. An ANS -compliant extension Rick VanNorman Artículo sobre la lógica difusa; código para implementarla y ejemplos.
18-6-14 Object-oriented programming in ANS Forth Andrew McKewan Artículo sobre programación orientada a objetos en ANS Forth, con una propuesta de código para implementarla.
18-6-32 MPE 's Forth coding style standard Microprocessor Engineering Ltd Descripción de las normas de estilo de la empresa MPE para escribir código fuente en Forth.
19-1-12 Transportable control structures Randy Laberknight Ampliación de la estructura CASE con SET[.
19-1-22 ANS -compatible stack-picture tool J. V. Noble Utilidad de depuración para hacer el seguimiento de las operaciones en la pila.
19-1-26 Six one-liners Wil Baden Seis breves definiciones útiles en ANS Forth: ANEW, BOUNDS, HAVING, LACKING, :: y ;;.
19-2-20 Linked lists Wil Baden Listas encadenadas en ANS Forth.
19-2-22 The search paradigm Neil Bawd Estructuras de control alternativas para búsquedas, en ANS Forth.
19-2-24 Simple macros Wil Baden Macros en ANS Forth.
19-3-22 Lookup tables Hans Bezemer y Benjamin Hoyt Artículo sobre tablas de índice y código para implementarlas de diferentes maneras.
19-5-26 Forth Programmer's Handbook Wil Baden Reseña sobre el libro Forth Programmer's Handbook.
19-5-27 Iterated interpretation Wil Baden Herramienta para realizar interpretación reiterada de un bloque de código.
19-6-19 An extensible user interface John J. Wavrik No me interesó el artículo y el programa; lo marqué porque éste contenía definiciones para 3DUP y -ROT.
19-6-32 Character literals Wil Baden Originalísima definición de la palabra C para hacer el papel de CHAR y de [CHAR], en dos versiones: una comprobando el valor de STATE y otra no. En ANS Forth.
19-6-33 Double number arithmetic Wil Baden Palabras adicionales para operar con números dobles, en ANS Forth.
20-1-24 Local macros Wil Baden Código para definir macros locales, sin definir palabras para ellas y por tanto sin usar espacio en el diccionario; se almacenan como cadenas de texto que serán interpretadas (tanto en modo de interpretación como de compilación) con EVALUATE. En ANS Forth.
20-1-27 What's a character? Wil Baden Palabras para comprobar si un carácter es dígito, símbolo de puntuación, alfanumérico, mayúscula... Dos versiones: una más compacta, con cálculos, y otra más rápida, con macros y una tabla de decisión. En el código figuran definiciones para WITHIN, BETWEEN y UPPERCASE.
20-2-7 Finite states machines in Forth J.V. Noble Marqué este artículo sólo por tener las deficiniciones de WITHIN y DIGIT del listado seis.
20-2-20 Lines and strings Wil Baden Dos palabras para marcar las líneas nuevas y antiguas de un código fuente, y poder elegir cuáles de ellas han de ser procesadas. En ANS Forth.
20-2-21 Local variables for misers Neil Bawd Implementación de variables locales utilizando macros.
20-2-22 Character tests Wil Baden Herramientas en ANS Forth para manipular y comprobar cadenas de caracteres.
20-3-19 A Forth switchblade Rick VanNorman Implementación de una estructura de control de tipo swith, reconfigurable incluso después de compilada, y cuyas acciones a ejecutar no necesitan estar definidas previamente.
20-3-26 Number conversion and literals Wil Baden Redefinición de NUMBER y NUMBER? en ANS Forth; definición de prefijos para indicar la base de los números en el código fuente; impresión de números sin usar la zona de PAD; impresión compacta, destructiva y no destructiva, del contenido de la pila.
20-3-29 Only standard definitions Wil Baden Herramienta de depuración que crea un vocabulario con sólo las palabras del estándar ANS Forth, para comprobar si una aplicación usa sólo esas palabras. El código tiene una palabra interesante: ??, que compila o no la siguiente palabra según el estado de la pila.
20-4-14 Simple object-oriented programming Wil Baden Extensiones en ANS Forth para programación orientada a objetos, escritas para que sean rápidas, fáciles de escribir y de leer.
20-4-18 How and why to use multitasking Frank Sergeant Artículo y códigos de ejemplo (para Pygmy Forth) sobre la multitarea en Forth.
20-5/6-7 User stacks in ANS Forth Leonard Zettel Implementación pilas de usuario en ANS Forth.
20-5/6-52 Linked list and ordered list Wil Baden Implementación de listas enlazadas y ordenadas, con clases y objetos, en ANS Forth.
20-5/6-75 EVALUATE macros Wil Baden Recopilación de ejemplos del uso de EVALUATE para la creación de macros, entre ellos versiones extendidas de SKIP y SCAN. En ANS Forth.