He estado usando Reactive Cocoa (por GitHub), una API de programación funcional reactiva para usar con las bibliotecas de Cocoa por un tiempo, pero acabo de leer "Out of the Tar Pit" , el documento que supuestamente presenta los conceptos detrás de él, y estoy un poco confundido
El documento presenta (según tengo entendido) la Programación Relacional Funcional , donde las relaciones entre los datos se crean con condiciones que el sistema FRP debería aplicar para reducir la cantidad de lógica y estado 'accidental' necesarios.
Mi pregunta es, ¿son estos dos conceptos: FR (eactivo) P y FR (elacional) P esencialmente lo mismo (siendo el primero una implementación de este último) o hay una diferencia central entre los dos? Desafortunadamente en este momento mi conocimiento del área no es lo suficientemente bueno como para diferenciarlos lo suficiente.
Si hay una diferencia, parece tener algo que ver, como su nombre lo indica, con la reacción a los cambios en los datos. Ciertamente, Reactive Cocoa (y Rx en C #) tienen el concepto de crear señales que se activan con los cambios en los datos y pueden usarse para modificar continuamente un valor a lo largo del tiempo.
¿Es esta la diferencia? Si no, ¿qué es?
(Por favor, disculpe el mal etiquetado, no puedo encontrar etiquetas relevantes y aún no puedo crearlas; actualice las etiquetas a algo más apropiado si puede).
Respuestas:
Una reacción puede propagar un cambio sin involucrar un modelo relacional. C = A + B Cambiar A y / o B y C reaccionarán al cambio (pero podrían terminar con el mismo valor). En P. 42
nota 16
fuente