2010-11-12 59 views
5

Lo siento mucho si hago una pregunta incorrecta pero realmente necesito una ayuda profesional. Tengo que hacer un proyecto bastante complejo para un principiante, usando Visual Haskell, para un curso de programación funcional. El problema es que, como estoy al principio, no sé qué tipo de tema elegir. Quiero hacer un proyecto que evidencie la utilidad real de la programación funcional. Si pudieras darme algunas ideas, estaré muy agradecido.Proyectos útiles en Haskell

Gracias

+0

¿Le ha dado el maestro otras pautas? – MatrixFrog

+0

No, él no nos dio ninguna otra guía – izayoi

Respuesta

3

quieren hacer un proyecto que evidentiates la verdadera utilidad de programación funcional. Si pudieras solo dame algunas ideas voy a estar muy agradecido .

Muy bien, entonces déjame decirte algo. La programación es sobre expresión. Los lenguajes funcionales le permiten expresar las cosas de manera diferente. ¿Cuáles son los beneficios de las expresiones que se hacen posibles con la programación funcional?

Las listas infinitas y la recursividad se pueden expresar de manera muy simple.

Recursion es la programación funcional correcta.

Trate de implementar algoritmos y estructuras de datos que lo utilicen. Árboles equilibrados, fibonacci, algoritmo euclidiano, todo lo que se beneficiará de ello. Realmente, cualquier cosa que tenga un árbol se puede expresar con mucha elegancia en los lenguajes funcionales.

Prueba los problemas matemáticos, intenta resolver el Euler Problems con Haskell.

+0

Ejemplo de listas infinitas: 'fibs = 0: 1: zipWith (+) fibs (tail fibs)'. La mejor implementación de Fibonacci de todos los tiempos. – delnan

+0

@delnan: Mejor uso @ -Patterns ...;) – fuz

+0

@FUZxxl: ¿Por qué me downrate, por favor explique. – Falcon

5

Se podría diseñar un lenguaje de programación sencillo y escribir un intérprete para que:
Compruebe el herramientas Alex (http://www.haskell.org/alex/) para el análisis léxico, y feliz (http://www.haskell.org/happy/) para analizar su código.

Puede hacer que el idioma sea tan complejo como desee. Creo que la definición de bucles While y funciones puede hacer que sea lo suficientemente complejo y satisfactorio para un principiante.

+3

Parsec es bastante utilizable, también. – delnan

+2

Tres hurras para parsec. Haskell es demasiado poderoso para necesitar un generador de analizador. – luqui