Hay mucha expectación en torno a Haskell, sin embargo, es difícil obtener información sobre cómo se usa en las aplicaciones del mundo real. ¿Cuáles son los proyectos / usos más populares de Haskell y por qué sobresale en la solución de estos problemas?
haskell
functional-programming
programming-languages
Sergio Tapia
fuente
fuente
Respuestas:
Desarrollo rápido de aplicaciones.
Si desea saber "¿por qué Haskell?", Debe considerar las ventajas de los lenguajes de programación funcionales (tomados de https://c2.com/cgi/wiki?AdvantagesOfFunctionalProgramming ):
Aparte de esto, Haskell tiene sus propias ventajas, tales como:
1 / 0
como el primer elemento de una lista y seguirá funcionando si solo utiliza el segundo elemento.Puedes consultar los siguientes enlaces:
fuente
x = 5;
garantiza que después de ejecutarse,x
contiene el valor5
.operator =
se llama. Y garantiza lo que sucede si no se define unoperator =
Creo que a las personas en esta publicación les falta el punto más importante para cualquiera que nunca haya usado un lenguaje de programación funcional: expandir su mente. Si eres nuevo en la programación funcional, entonces Haskell te hará pensar en formas que nunca antes habías pensado. Como resultado, su programación en otras áreas y otros idiomas mejorará. ¿Cuánto cuesta? Difícil de cuantificar.
fuente
Hay una buena respuesta para lo que un lenguaje de propósito general como Haskell es bueno: escribir programas en general.
Para lo que se usa en la práctica, tengo tres enfoques para establecer eso:
Indica que es bueno para gráficos, redes, programación de sistemas, estructuras de datos, bases de datos, desarrollo, procesamiento de texto ...
Y finalmente, mi opinión sobre lo que es realmente fuerte en:
Espero que eso le dé una idea de cuán amplia es su pregunta, si se va a responder con alguna especificidad.
fuente
Un ejemplo de Haskell en acción es xmonad , un "administrador de ventanas con características en menos de 1200 líneas de código".
fuente
Del Wiki de Haskell :
Según Wikipedia, el lenguaje Haskell se creó a partir de la necesidad de consolidar los lenguajes funcionales existentes en uno común que podría usarse para futuras investigaciones en el diseño de lenguaje funcional.
Según la información disponible, es evidente que ha superado su propósito original y se utiliza para mucho más que la investigación. Ahora se considera un lenguaje de programación funcional de propósito general.
Si todavía te preguntas, "¿Por qué debería usarlo?", Entonces lee el ¿Por qué usarlo? sección de Haskell Wiki Introducción.
fuente
Haskell es un lenguaje de programación de propósito general. Se puede usar para cualquier cosa que use en cualquier otro idioma. No estás limitado por nada más que tu propia imaginación. ¿En cuanto a lo que es adecuado? Bueno, casi todo. Hay pocas tareas en las que un lenguaje funcional no sobresalga.
Y sí, soy el Rayne de Dreamincode. :)
También me gustaría mencionar que, en caso de que no haya leído la página de Wikipedia, la programación funcional es un paradigma como la programación orientada a objetos es un paradigma. Por si acaso no lo sabías. Haskell también es funcional en el sentido de que funciona; funciona bastante bien en eso.
El hecho de que un idioma no sea un lenguaje orientado a objetos no significa que el idioma esté limitado por nada. Haskell es un lenguaje de programación de propósito general, y tiene el mismo propósito general que Java.
fuente
Tengo uno genial, Facebook creó una herramienta automatizada para reescribir el código PHP. Analizan la fuente en un árbol de sintaxis abstracta, hacen algunas transformaciones:
No sé por qué, pero ese parece ser su estilo particular y luego lo imprimen bastante.
https://github.com/facebook/lex-pass
Usamos haskell para hacer lenguajes específicos de dominios pequeños. Grandes cantidades de procesamiento de datos. Desarrollo web. Arañas web. Pruebas de aplicaciones. Escritura de scripts de administración del sistema. Guiones de fondo, que se comunican con otras partes. Scripts de monitoreo (tenemos un DSL que funciona muy bien junto con munin, hace que sea mucho más fácil escribir el código de monitor correcto para sus aplicaciones).
Todo tipo de cosas en realidad. Es solo un lenguaje de uso general cotidiano con algunas características muy potentes y útiles, si tiene cierta inclinación matemática.
fuente
false
a la izquierda, no veo el punto de usar una herramienta para hacerlo automáticamente: si ya tienes un==
operador, entonces ya sabes que no tienes el error del que parte lex-pass está destinado a atrapar, y si tienes un=
lugar, no hay una forma segura de saber si es así o no deliberadamente.De Haskell :
Básicamente, Haskell se puede utilizar para crear casi cualquier cosa que normalmente se crearía con otros lenguajes de uso general (por ejemplo, C #, Java, C, C ++, etc.).
fuente
Por ejemplo, para desarrollar aplicaciones web HTML5 interactivas en tiempo real. Vea Elm , cuyo compilador está implementado en Haskell y cuya sintaxis toma muchos préstamos de Haskell.
fuente
Esta es una muy buena fuente de información sobre Haskell y sus usos:
Lanzamientos de Haskell de código abierto y crecimiento
fuente