Como parte de una búsqueda continua de conocimiento, pasaré un tiempo esta semana aprendiendo los conceptos básicos de F # como una introducción a la programación funcional. Creo que estoy entendiendo la construcción de software bajo este modelo y algunos de los beneficios propuestos, pero todavía estoy un poco confuso en los casos de uso del mundo real.
Esperaba que las historias de éxito de F #, o al menos algunas aplicaciones con las que estaría familiarizado, pudieran aclarar un poco más cuándo F # (o cualquier lenguaje de programación funcional) sería apropiado para un proyecto.
Volviendo a la pregunta, ¿cuáles son algunas aplicaciones bien conocidas que usan F # o un lenguaje de programación funcional similar?
Por cierto: también estoy abierto a escuchar sobre algunas aplicaciones menos conocidas, pero si menciona una, explique los aspectos básicos de la aplicación y por qué el idioma utilizado fue la opción adecuada.
fuente
Respuestas:
Supongo que la razón principal por la que no hay aplicaciones "conocidas" escritas en F # es porque lleva años, incluso décadas, convertirse en "conocidas" y F # simplemente aún no es tan antiguo.
Sin embargo, la gran mayoría de las aplicaciones no son "bien conocidas". Solo hay un PowerPoint, pero hay literalmente millones de pequeñas aplicaciones personalizadas de nómina personalizadas escritas a mano.
Y F # ciertamente se usa internamente en muchas compañías financieras, haciendo computación científica y numérica en, por ejemplo, biotecnología o greentech, haciendo estadísticas que Dios sabe dónde, etc. Estas aplicaciones no son bien conocidas, ya sea porque simplemente no son "sexys" o porque las compañías consideran a F # su arma secreta que les da una ventaja competitiva. (OCaml, Smalltalk y APL cumplen funciones similares. Muchas compañías financieras usan APL, por ejemplo, pero no lo publicitan ampliamente. De hecho, a menudo los usuarios de APL ni siquiera son programadores, y por lo tanto ni siquiera sabrían dónde y cómo para publicitarlo incluso si quisieran).
fuente
Hay Tabbles . Un administrador de archivos y organizador, con muchas características. Proporciona un sistema de etiquetado que incluso puede compartir con otros. Es un producto comercial.
fuente
Me he preguntado lo mismo por un tiempo. Realmente me gusta F # pero no he visto nada en el ámbito de una aplicación comercial. Lo que he escuchado (y con bastante frecuencia) es que F # se ha utilizado mucho en el ámbito financiero.
¿Qué marcos web decentes existen para la programación funcional? tiene algunos ejemplos de marcos web para lenguajes de programación funcionales y sé que http://cs.hubfs.net/blogs/tomasp/archive/2010/05/09/14050.aspx es un artículo sobre cómo escribir un ASP.Net MVC 2 Aplicación web en F #.
Como he estado buscando artículos sobre F # y muchos ejemplos y elogios de la gente han llegado en forma de analizadores de registros. Pero eso siempre se sigue con una advertencia de algo como "No se me permite usar el idioma en el trabajo" (parafraseado, por supuesto). Trataré de encontrar más ejemplos.
He estado jugando con la idea de crear un MUD (Multi-User Dungeon) basado en texto en F #, pero parece que nunca tengo tiempo.
fuente
Miré brevemente a F # cuando quería escribir un analizador SQL, que terminé implementando en Haskell. Dicho esto, podría usar F # en cualquier lugar donde usaría C #, pero ¿valdría la pena? Si va a hacer mucha programación funcional, valdrá la pena usar F #, ya que la sintaxis para las construcciones funcionales es más amigable. Si está haciendo principalmente OO, probablemente sea mejor quedarse con C #.
fuente
Hierro JS .
Personalmente, creo que es extraño que la única aplicación que conozco que esté escrita en F # sea algo que le permita escribir en un idioma que no sea F #.
Para mí, eso dice mucho sobre el verdadero valor de la programación funcional. La gente puede celebrar cuán "bello" es todo lo que quieren: si fuera tan bello, la gente lo usaría más.
fuente