Tengo una idea: las funciones (en FP) podrían componerse de forma similar a los componentes en OOP. Para los componentes en OOP usamos interfaces. Para funciones podríamos usar delegados. El objetivo es lograr la descomposición, modularidad e intercambiabilidad. Podríamos emplear la inyección de dependencia para que sea más fácil.Descomposición (modularidad) en los lenguajes funcionales
Traté de encontrar algo sobre el tema. Sin suerte. ¿Probablemente porque no hay programas funcionales lo suficientemente grandes como para necesitar esto? Mientras buscaba aplicaciones de escala empresarial escritas en FP, encontré esta lista. Functional Programming in the Real World y this paper. Espero haberme perdido las aplicaciones más arriesgadas para FP, que serían lo suficientemente grandes como para merecer la descomposición.
Pregunta: ¿Podría mostrar la aplicación FP decente del mundo real (preferiblemente de código abierto), que usa la descomposición en módulos?
Bonus chatter: ¿Cuál es el patrón habitual? ¿Qué tipo de funciones generalmente se descomponen en módulos separados? ¿Alguna vez se burlaron de las implementaciones con fines de prueba?
No estoy familiarizado con un concepto de FP llamado "delegados". ¿A qué te refieres? – Chuck
Es el concepto C#/F #. Función fuertemente tipada - tipo de función. Similar a la interfaz con un solo método en Java. Ver http://msdn.microsoft.com/en-us/library/dd233206.aspx –
Acabo de encontrar un artículo relacionado interesante http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.143.2712&rep= rep1 & type = pdfq =% 20programming funcional% 20decomposition y ei = FY6aTOKvKcbxOf2cxaIP y USG = AFQjCNHZ39lndEyDRhmXzO-7O0s22ZQ1Jg y SIG2 = LtfPcDLYIPljaqR6uc-D5A & CAD = rja –