2012-04-30 11 views
9

Me parece que qthaskell no se desarrolla activamente/se abandona.Usando QTQuick con haskell

¿Admite QtQuick?

¿Hay planes/desarrollo en apoyo de qt 5?

¿Alguien usa qt con haskell o es gtk2hs el favorito actual?

Respuesta

12

QtHaskell admite Qt 4.6 y, por lo tanto, QtQuick, al menos la primera versión de construcción de faro. Tenga en cuenta que esta versión de QtQuick es completamente diferente de la versión actual de QtQuick; la mayoría de los elementos y propiedades tienen nombres completamente diferentes.

El soporte GTK para Haskell se mantiene activamente. Como has visto por ti mismo, no se puede decir lo mismo de Qt. Una de las principales razones es que GHC no puede importar código C++ extraño por sí mismo; necesita generar un código C envoltorio que luego es llamado por GHC, y no hay un método general para envolver el código C++ como C, por lo que una nueva herramienta debe desarrollarse para C++ en este caso. Por lo tanto, los "favoritos actuales" para las bibliotecas de GUI en Haskell son GTK y WxWidgets.

Sería muy interesante utilizar Qt en Haskell, por ejemplo, porque el sistema de sockets Qt se podría usar para enlazar en bibliotecas FRP (programación reactiva funcional) y porque Qt tiene una interfaz que es muy transparente y admite estructuras de datos inmutables.

+1

Última versión de qthaskell fue sep.2010. y el qt actual es 4.8.1. Parece que no tengo más remedio que ir con gtk. :( –

+0

@VagifVerdi: wxHaskell también podría ser una opción. Está en un desarrollo muy activo y tiene todas las funciones. – amindfv

+0

Por "sistema de tomas Qt" ¿te refieres a las "ranuras y señales" de Qt? Utilizándolas para FRP, posiblemente con Haskell , es lo primero que pensé cuando me enteré de ellos. Pero no tengo experiencia tanto en Qt como en Haskell, así que estoy satisfecho de que alguien más haya tenido la misma idea, si de hecho es la misma idea. Aquí está la esperanza de que alguien ¡Empieza a trabajar en esto! – kini

5

realidad, hay una biblioteca para usar Qt Quick de Haskell, aunque no lo hice (aún) probar en mi misma:

http://hackage.haskell.org/package/hsqml-0.1.1

http://www.gekkou.co.uk/software/hsqml/

http://www.haskell.org/pipermail/haskell-cafe/2012-September/103350.html

Se mantiene a partir de ahora, con la última versión en septiembre de 2012. También hay un programa de demostración publicado en Hackage.

Esa versión todavía no admite la emisión de señales de código Qt Haskell, no obstante es un tenedor que se supone que ofrecen esa característica: https://github.com/travitch/hsqml

Pero el tenedor parece menos mantiene que el paquete original, y en Además, el autor del paquete original indicó que tiene la intención de agregar esa característica en el futuro (y también admitirá Qt5 cuando esté disponible).

ACTUALIZACIÓN ahora estoy felizmente usando esta biblioteca, aunque no obtuvo mucha tracción, me funciona muy bien.

+0

¡Impresionante! Gracias. Parece muy prometedor. –

Cuestiones relacionadas