Sorancio

Registrado: 29 May 2009 Mensajes: 878 Ubicación: España
| Publicado: 14/09/2011 4:37 am | | | Título: |
| CL es un lenguaje híbrido y no requiere de una función de inicio para ejecutarlo, por eso para el intérprete (REPL a partir de ahora) es válido leer esto en un archivo:
| Código: | (defun foo (a b) (+ a b)) (foo 4 5) |
Y al hacerlo devolverá 9. Es, para que nos entendamos, como un programa PHP aunque hay muchas diferencias (CL tiene estado, las funciones se pueden sobrecargar y reprogramar en tiempo de ejecución son sólo unas cuantas de ellas).
SBCL (el REPL que yo uso) está escrito en CL y está compilado como un ejecutable, así que se puede hacer así combinando el runtime de SBCL con el propio programa. En cambio, todos los que usamos este lenguaje recomendamos aprender con el REPL (yo recomendaría utilizar emacs + SLIME + SBCL) e ir probando todas las características (alguna más compleja que otra).
La mejor manera de probar por ejemplo, el sistema de macros es con el material que te he dicho (eso sí, acostúmbrate bien primero porque reconozco que es jodido moverse así al principio). Cuando lo hayas configurado, tendrás profiling, REPL integrado, depuración y macro-expansión (concepto de Lisp sólo) en un mismo editor de texto. Yo no podría vivir sin ello xD.
Ten paciencia con CL porque es un lenguaje que puede parecer muy pesado. |
|