Por ejemplo, en Java hay Functional Java y Higher-Order Java. Ambos esencialmente dan una API pequeña para manipular funciones currificadas de orden superior, y tal vez algunos tipos de datos nuevos (tuplas, listas inmutables).¿Existe una biblioteca de programación funcional para .NET?
Respuesta
¿Has consultado en F#?
También una buena publicación de blog sería here que habla sobre cómo usar las nuevas expresiones genéricas/lambda integradas en C# 3.0.
Si acaba de añadir usando System.Linq a la parte superior de su archivo de origen hay un montón de buenas nuevas funciones añadidas a trabajar con colecciones como etc.
Creo que desee F#
Además, las versiones más recientes de C# tienen una gran cantidad de conceptos funcionales incluidos en la base de langauge.
F #, hay una versión de CTP disponible en microsoft.
Puede haber una biblioteca para C#, pero probablemente deberías considerar usar F # http://research.microsoft.com/fsharp/fsharp.aspx y http://msdn.microsoft.com/en-us/fsharp/default.aspx.
Microsoft planea hacer que F # sea un lenguaje de primera clase en Visual Studio, por lo que debe haber poco riesgo al usar uno de los CTP para crear sus elementos iniciales.
Si está buscando algo que extienda C#, entonces no, pero hay F # que es un lenguaje funcional basado en .NET. Desde "Acerca de F #" page:
F # es un lenguaje de programación funcional escrito para .NET Framework. Combina la concisión, la expresividad y la composicionalidad de la programación funcional tipada con el soporte en tiempo de ejecución, las bibliotecas, la interoperabilidad, las herramientas y el modelo de objetos de .NET. F # proviene de la familia de idiomas ML y tiene un lenguaje central compatible con el de OCaml, aunque también se basa en C# y Haskell. F # se diseñó desde cero para ser un ciudadano de primera clase en .NET, lo que brinda una interoperabilidad fluida con otros lenguajes .NET. Por ejemplo, C# y F # pueden llamarse entre sí directamente. Esto significa que F # tiene acceso inmediato a todas las API de .NET Framework, incluyendo, por ejemplo, Windows Presentation Foundation y DirectX. Del mismo modo, las bibliotecas desarrolladas en F # se pueden usar desde otros lenguajes .NET.
Dado que F # y OCaml comparten un lenguaje de núcleo similar, algunas bibliotecas y aplicaciones de OCaml pueden realizar compilaciones cruzadas directamente o con pequeños cambios compilados condicionalmente. Esto proporciona una ruta de compilación cruzada y/o puerto de código OCaml existente a .NET, y también permite a los programadores transferir habilidades entre estos idiomas. Uno de los principales objetivos del proyecto ha sido ampliar el alcance de los lenguajes tipo OCaml a arenas donde tradicionalmente no se han utilizado. A lo largo del proyecto, los diseñadores de F # están agradecidos por el apoyo y aliento de Xavier Leroy y otros en la comunidad OCaml.
No es una biblioteca de plegado/filtrado/retractilado per se, pero Luca Bolognese de Microsoft tiene a series of blog posts donde construye una biblioteca C# para programación funcional con tipos como tuplas, registros, tipos de uniones y así sucesivamente:
También Linq es básicamente una biblioteca para programación funcional con soporte sintáctico en C# .
Consulte http://code.msdn.microsoft.com/FunctionalCSharp para algunas muestras.
Suponiendo que no se puede utilizar F # por cualquier razón, y sólo quieren utilizar paradigmas funcionales y expresiones idiomáticas en su código C# para mejorar la calidad & fiabilidad:
Functional style pattern matching for C#
Hay también 'elevate' que tiene algunas cosas funcionales como tipos de opción (maybes) etc.
IdiomaExt looks muy prometedor para facilitar la programación de estilo funcional en C#.
- 1. Biblioteca de programación funcional para Objective-C
- 2. SÓLIDO para programación funcional
- 3. Documentación de programación funcional
- 4. ¿Existe una biblioteca de formato de SQL gratuita para .NET?
- 5. Programación funcional en C++
- 6. Arquitectura de programación funcional
- 7. Modelo de máquina para programación funcional
- 8. programación funcional en Java
- 9. Programación funcional aplicada
- 10. Haskell - Programación funcional Ayuda
- 11. Scala gimnasia de programación funcional
- 12. ¿Qué protocolo de Garmin? Biblioteca de GPS para .NET existe
- 13. Programación funcional: Efectos secundarios
- 14. Comentarios adecuados para la programación funcional
- 15. ¿Existe la biblioteca de transliteración .NET?
- 16. Programación funcional pura para la GPU
- 17. Introspección de lenguajes de programación funcional
- 18. Programación funcional: Mejor plataforma/Entorno
- 19. .net MVC prueba funcional
- 20. ¿Qué es zip (programación funcional?)
- 21. Programación funcional pura en D
- 22. Programación funcional en plantas nucleares?
- 23. ¿Existe una biblioteca de consola más elegante para C#?
- 24. ¿Qué lenguaje de programación funcional debería elegir como primer lenguaje de programación funcional?
- 25. ¿Hay una expresión de programación funcional para filtrar una lista en trues y falsos?
- 26. Punto de definición de la programación funcional
- 27. ¿La programación funcional es un subconjunto de la programación imperativa?
- 28. Biblioteca SASL para .net
- 29. cola Funcional De Programación En Scala
- 30. Diagramas de flujo de programación funcional