tutorial net descargar compiler compiladores common lisp common-lisp

net - ¿Ejemplos del excelente código Common Lisp?



lisp descargar (7)

El Arte del Protocolo Metaobject - es un libro con el código más hermoso jamás escrito.

Aprendí suficiente Common Lisp para poder abrirme paso escribiendo una aplicación. He leído Practic Common Lisp de Seibel

¿Qué bibliotecas o programas debería leer para entender los modismos, el Tao, de Common Lisp?


Es otro libro, por lo que puede que no sea precisamente lo que estás buscando, pero la Programación Paradigmas en Inteligencia Artificial de Peter Norvig contiene muchos programas Small Lisp bien escritos y pequeños. No es un código perfectamente natural, especialmente en los primeros capítulos, porque, como el código en Practical Common Lisp , se enfoca en enseñarte a programar en CL, pero aún vale mucho la pena leerlo. También contiene algunos excelentes ejemplos de formas en que puede compilar otros idiomas además de Common Lisp, y tiene algunos consejos valiosos sobre cómo mejorar el rendimiento de los programas de CL.


LISP (Lisp en pequeñas piezas) es un libro ordenado; muestra clossette (sistema pequeño de obect) y algunas cosas del compilador. Sin duda, el libro de Norvig es asombroso.

También me gusta "construir problemas" pero el código es un poco ruf. No estoy acostumbrado a vincular variables de ámbito dinámico en la lista de parámetros. Pero resultó en mejoras muy divertidas al tratar de "precompilar" la red de discriminación. Este libro ofrece otros enfoques para algunos de los códigos de Norvig; Sigo pensando que el código de Norvigs es mucho más "limpio y ordenado" (es más fácil de leer y comprender, y aún así ser creativo).

Los "solucionadores de problemas de construcción" deberían incluir una etiqueta de advertencia como "necesitarás algo de aspiren (sp). Sentí como si un rayo me golpeara en la cabeza cuando finalmente" entendí "a la rms y la dependencia de los sussmans fue desviada. Compilar el pdis también fue brillante. Excelente material. Solo desearía poder recordarlo todo ...


Las otras recomendaciones (PAIP y CL-PPCRE) son excelentes. También sugeriría que me familiarice con el código de Alexandria y también eche un vistazo a GBBopen .


Lo único que ofrecería es programar. Eso es lo que hice.

Hice dos cosas. Uno de ellos abordaba un problema con el que estaba familiarizado, un marco de prueba de unidades y lo expandí para incluir suites de prueba. Para obtener una comprensión de macro escritura.

Lo segundo que hice fue jugar con objetos básicos en CL. Macros, cierres y estilo

Además, no se olvide de recibir comentarios de Lispers sobre su código.

(defun ugly-lisp-code? () ())


Me gusta el código SBCL.


CL-PPCRE a menudo se cita como un buen ejemplo, por una buena razón. En realidad, probablemente cualquiera de las bibliotecas de Edi Weitz sea buena para leer, pero CL-PPCRE es particularmente inteligente y es una biblioteca útil e impresionante. Más allá de eso, muchas implementaciones de CL están escritas principalmente en CL. Puede ser bastante productivo elegir una parte de CL que generalmente se implementa en CL y comparar cómo las manejan diferentes implementaciones. En particular, algunos de los mejores ejemplos de grandes macro sistemas útiles son implementaciones de cosas en el estándar. Loop es una lectura interesante, o si eres realmente ambicioso podrías comparar algunas implementaciones de CLOS.

Si hay algún área de informática en la que esté particularmente interesado, podría valer la pena mencionarla, para que las personas puedan adaptar sus recomendaciones a eso.