Estoy usando Emacs, con CLISP y Slime, y quiero poder dibujar en la pantalla. Estoy pensando específicamente en dibujar gráficos, pero cualquier cosa que me permita dibujar formas básicas y manipularlas podría ayudarme a comenzar.¿Cómo obtengo una GUI de common-lisp en Windows?
Respuesta
Creo que he encontrado mi propia respuesta Clojure parece tener todo lo que estaba buscando, simplemente porque ahora puedo usar todos los elementos de la GUI de Java de forma nativa en LISP. Es un dialecto diferente de LISP que el Common-Lisp que estaba usando, pero parece tener mucho apoyo de la comunidad, y se integra con mi instalación de Windows de Emacs ya sea a través de SLIME o mediante el intérprete Inferior-Lisp. Hasta ahora he estado muy impresionado.
Oh, un ejemplo de código:
(. javax.swing.JOptionPane (showMessageDialog nil "Hello World"))
Alguien adivina lo que hace esto? :)
El blog de Bill Clementson tiene bastante en Clojure, que incluye una gran cantidad de mensajes útiles sobre cómo instalarlo. Vea aquí: his posts on Clojure
Puede cambiar de CLISP al free LispWorks Personal Edition y utilizar la API de dibujo Puertos de gráficos CAPI.
O puede usar Lisp's Foreign Function Interface y utilizar uno de los kits de herramientas gráficas disponibles para su sistema operativo.
Doug tiene razón; CAPI funcionará bien. Otras cosas que puede probar:
cltk: http://www.cliki.net/Lisp-Tk
sé que tiene algo Allegro para la programación de Windows también, pero nunca he probado.
Lo que también puede trabajar es células-GTK: http://common-lisp.net/project/cells-gtk/
Una vez más, sólo puedo decir que existe pero no lo malo que es, o si es que realmente funciona ...
no puedo comentario también sobre la calidad de http://www.cliki.net/GTK%20binding
Pero eso es sobre todo lo que está disponible.
Corman Lisp probablemente también tiene algo que ofrecer para la programación de Windows.
De todos modos, las opciones en Windows son relativamente escasas. El es probable que pueda tener la mayor confianza en el CAPI, que se utiliza para el IDE LispWorks en Windows, Linux, MacOS X y en bastantes grandes sistemas Unix también ...
Saludos
Clojure es un excelente Lisp, y Swing es un sólido (si no particularmente visualmente emocionante) juego de herramientas de ventanas. Si quieres hacer gráficos más avanzados y/o jugar con la programación de juegos, deberías consultar Slick, que es una biblioteca de juegos/gráficos de propósito general que se encuentra sobre Swing y te da acceso a OpenGL y muchas otras cosas.
He encontrado que la combinación Clojure/Slick es una excelente manera de hacer una programación de gráficos exploratorios, ya que puede interactuar con la ventana gráfica directamente desde REPL.
Para enrollar las suyas propias (como dijiste, formas básicas) prueba Lispbuilder-SDL o una de las FFI cl-cairo (es solo mi suposición que esta última funciona con MS Windows, sin embargo).
Hay cl-cairo2 - un enlace a la biblioteca de dibujo vectorial de El Cairo. Se puede usar para dibujar varias imágenes en varias superficies. Hay una biblioteca cl-2d que usa cl-cairo2 para dibujar gráficos.
Y hay cl-gtk2 - un enlace a la biblioteca Gtk +. Puede crear widgets que se dibujan con cl-cairo2 (o cl-2d) que dibujan lo que desea.
Sé que esta es una publicación anterior, pero la información está aquí para que otras personas como yo encuentren este hilo buscando lo mismo.
Esta biblioteca para enlaces tk en lisp común parece funcionar bastante bien. http://www.peter-herth.de/ltk/
usuarios CLISP pueden encontrar los siguientes útiles para sus aplicaciones gráficas:
CL-vectores es una biblioteca pura Common Lisp para crear, transformar y render caminos vectoriales anti-aliasing. Se puede instalar utilizando ASDF-Install. http://projects.tuxee.net/cl-vectors/
vecto es una interfaz simplificada a los poderosos CL-vectores biblioteca de rasterización vector .... los resultados se pueden guardar en un archivo PNG ... Desde vecto y todas las librerías de soporte son escrito completamente en Common Lisp, sin depender de bibliotecas externas que no sean Lisp , debería funcionar en cualquier entorno de Common Lisp . Vecto es disponible bajo una licencia tipo BSD. La versión actual es la 1.4.3, publicada el 26 de agosto de 2009. http://www.xach.com/lisp/vecto/
- 1. Cómo hacer rebase --interactive en una GUI de Windows
- 2. ¿Cómo puede un servicio de Windows ejecutar una aplicación GUI?
- 3. Windows Service Plus GUI/C#
- 4. Aplicaciones GUI basadas en PHP para Windows
- 5. Interfaz de usuario de GUI y Windows
- 6. Seleccionar GUI en Windows (wxPy vs pyQt)
- 7. GUI Framework/Lib para C++ en Windows
- 8. ¿Cómo hago una GUI?
- 9. XML RPC GUI para desarrolladores en Windows?
- 10. Windows GUI + Salida de consola, estilo Linux
- 11. ¿Cómo obtengo la información de la batería en Windows?
- 12. ¿Cómo obtengo la cantidad de pantallas en Windows?
- 13. CMake GUI en Mac
- 14. ¿Cómo hacer que la GUI espere al servicio de Windows?
- 15. ¿GCC tiene una GUI?
- 16. ¿Cómo obtengo una lista de impresoras instaladas?
- 17. ¿Cómo creo una GUI para una aplicación de Windows usando C++?
- 18. Programación de la GUI de Perl en Windows
- 19. ¿Cómo obtengo un control del botón Inicio en Windows 7?
- 20. ¿Cómo obtengo el resultado de un comando en una variable en Windows?
- 21. Desarrollo de GUI con C++ en un entorno de Windows
- 22. ¿Cómo actualizo una GUI en Java?
- 23. ¿Cómo puedo programar una GUI en MATLAB?
- 24. Compatibilidad entre Mac y Windows MATLAB Gui
- 25. ¿Cómo obtengo argumentos en una aplicación de formulario?
- 26. Escribir una GUI en chirrido
- 27. Cómo escribir en la consola en una aplicación GUI
- 28. Cómo obtengo un DataRow de una fila en un DataGridView
- 29. ¿Cómo crear una GUI dentro de una función en MATLAB?
- 30. El mejor lenguaje de script para Windows GUI EXE