¿Pueden las recetas de HtDP aplicarse fácilmente al diseño de los programas de FRP?

Una receta de diseño (función) describe dos dimensiones: proceso y datos. La receta de diseño estructural es sobre datos definidos inductivamente (y hay muchos sabores). La receta de abstracción se trata de datos de orden superior de forma limitada. Creo que FRP (o la programación basada en stream en Haskell) podría beneficiarse de un enfoque de receta de diseño, pero admitiré libremente que no he programado lo suficiente en este contexto para decir cuánto del proceso existente (o recetas de diseño existentes) se mantendría. .

Una receta de diseño (de programa) trata sobre cómo obtener la lista de deseos inicial. HtDP (2e) cubre dos de estos casos: programas de GUI que se ocupan de los eventos de clave y tiempo del mouse, más programas por lotes que consumen toda su información por adelantado y producen su producción de una sola vez. Ambos requieren elecciones por parte del programador que determinan qué funciones deben diseñarse primero.

Lo que falta actualmente entre el programa y la receta de diseño de funciones es una guía sobre cómo dividir algunas funciones en piezas más pequeñas y cómo elegir el tipo de datos intermedio. Mi corazonada es que este tipo de orientación también sería necesaria para una receta de diseño de programa de FRP.