2009-04-12 14 views
15

Con las miles de implementaciones de LISP y Scheme disponibles, me está resultando muy difícil encontrar la correcta para usar en el desarrollo de Windows. Aprendí estos idiomas en la escuela y los encontré para que fueran muy elegantes, sin embargo, parece que no puedo encontrar una implementación que sea adecuada para desarrollar código que no sea en un entorno académico.Implementación de Windows Scheme/Lisp

¿Qué es una implementación de esquema o LISP con los siguientes requisitos?

compila a código nativo, en lugar de compilar a C.

Soporta multihilo en varios procesadores (es decir. Múltiples hilos pueden ejecutar simultáneamente).

Produce código de 64 bits.

Se puede usar en Windows sin requerir Cygwin.

+2

Por cierto, LISP ahora es Lisp y realmente es una familia de idiomas que incluyen Scheme, Common Lisp, Emacs Lisp, Clojure, Logo, AutoLisp y otros. –

Respuesta

12

Corman Lisp podría ser interesante, pero no es compatible con el código de 64 bits (AFAIK).

Clozure CL está siendo portado a Windows, por lo que probablemente no es muy maduro y le faltan algunas cosas.

LispWorks y Allegro CL son geniales, aunque no son compatibles con varios hilos concurrentes de Lisp. Actualmente LispWorks 6 está en desarrollo, que admitirá múltiples hilos simultáneos de Lisp. Sin embargo, tenga en cuenta que, por ejemplo, LispWorks actualmente puede ejecutar un solo hilo Lisp en cualquier momento, pero múltiples hilos extraños.

Dan Weinreb tiene un survey of Common Lisp implementations.

4

Los grandes implementaciones de Common Lisp comerciales deben cumplir con todos los criterios:

LispWorks y Allegro CL.

Una implementación del esquema bastante completa, utilizable y gratuita es Racket (anteriormente conocido como esquema PLT).

El Clozure CL gratuito también puede satisfacer sus necesidades.

+0

* PLT Scheme * alias [Racket] (https://racket-lang.org/) es realmente terrorífico :-) – Wolf

4

soy muy aficionado a Clozure. MIT Scheme se ejecutará en Windows, y es una buena opción para principiantes porque va a coincidir con The Book best.

+1

¿Cuál es el libro? – MadPhysicist

+1

https://mitpress.mit.edu/sicp/full-text/book/book.html –

+0

¡Eso es lo que yo pensaba! Lo estoy leyendo en este momento. ¿Recomendaría usted y las implementaciones de Scheme que funcionan bien con Emacs y tal vez con Windows? – MadPhysicist

1

Parece que falta ECL. Es realmente agradable la implementación de CL que funciona en Windows, Linux y Mac, admite subprocesos nativos en todas las plataformas y permite la creación de archivos binarios.

2

Clozure CL se está portando por su versión 1.3 en ventanas de 32 y 64 bits.

Esa versión 1.3 se encuentra en RC1 mientras escribo esto.

Hay un ejemplo proporcionado que usa llamadas de API Win32 nativas a través del FFI para mostrar una ventana Win32 tradicional, completa con un bucle de mensajes, etc.

El servidor web Hunchentoot funciona en las compilaciones actuales.

Es compatible con Unicode, por lo que la interfaz con el 'W' Win32 APis debe ser directa.

Se compila con código nativo, admite subprocesos nativos y no requiere cygwin.

+0

Desafortunadamente, requiere SSE2 sin recuperación, por lo que no funciona en todo el hardware. – Marko

Cuestiones relacionadas