visual una studio standard realiza qué que net librería librerias libreria función framework crear como comentario clases bibliotecas biblioteca c# .net functional-programming

c# - una - librerias visual basic 2010



¿Hay una biblioteca de Programación Funcional para.NET? (9)

Por ejemplo, en Java hay Java funcional y Java de orden superior . 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).


¿Has mirado en F # ?

También estaría aquí una buena publicación de blog que habla sobre cómo usar las nuevas expresiones genéricas / lambda integradas en c # 3.0.

Si simplemente agrega System.Linq a la parte superior de su archivo fuente, se agregarán MUCHAS nuevas y agradables funciones para trabajar con colecciones como doblar / filtrar / etc.


Creo que quieres F #

Además, las versiones más recientes de C # tienen muchos conceptos funcionales incluidos en el lenguaje base.


F #, hay una versión de CTP disponible en microsoft.



Si está buscando algo que extienda C #, entonces no, pero hay F #, que es un lenguaje funcional basado en .NET. Desde la página "Acerca de F #":

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.

Como F # y OCaml comparten un lenguaje central 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 similares a 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 empaquetada en sí misma, pero Luca Bolognese de Microsoft tiene una serie de publicaciones en blogs donde construye una biblioteca C # para programación funcional con tipos como tuplas, registros, tipos de uniones, etc.

Además, Linq es básicamente una biblioteca para programación funcional con soporte sintáctico en C #.