<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments for Web personal de Javier Sancho</title>
	<atom:link href="http://www.jsancho.org/comments/feed" rel="self" type="application/rss+xml" />
	<link>http://www.jsancho.org</link>
	<description>Escribo sobre software libre, y a veces sobre otras cosas.</description>
	<lastBuildDate>Sat, 09 Mar 2013 17:06:01 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
	<item>
		<title>Comment on Persiguiendo una Abadía del Crimen libre by jsancho</title>
		<link>http://www.jsancho.org/2005/01/10/39/comment-page-1#comment-627</link>
		<dc:creator>jsancho</dc:creator>
		<pubDate>Sat, 09 Mar 2013 17:06:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.jsancho.org/wordpress/2005/01/10/persiguiendo-una-abadia-del-crimen-libre/#comment-627</guid>
		<description><![CDATA[&lt;a href=&quot;#comment-626&quot; rel=&quot;nofollow&quot;&gt;@Jorge Valencia &lt;/a&gt; 
Gracias, aunque no podré pasar y tampoco parece que J.A. tenga mucho interés, como expliqué en http://www.jsancho.org/2005/04/04/47]]></description>
		<content:encoded><![CDATA[<p><a href="#comment-626" rel="nofollow">@Jorge Valencia </a><br />
Gracias, aunque no podré pasar y tampoco parece que J.A. tenga mucho interés, como expliqué en <a href="http://www.jsancho.org/2005/04/04/47" rel="nofollow">http://www.jsancho.org/2005/04/04/47</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Persiguiendo una Abadía del Crimen libre by Jorge Valencia</title>
		<link>http://www.jsancho.org/2005/01/10/39/comment-page-1#comment-626</link>
		<dc:creator>Jorge Valencia</dc:creator>
		<pubDate>Sat, 09 Mar 2013 09:37:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.jsancho.org/wordpress/2005/01/10/persiguiendo-una-abadia-del-crimen-libre/#comment-626</guid>
		<description><![CDATA[Es posible que este fin de semana le encuentres si te acercas a http://www.microsiervos.com/archivo/ordenadores/retromadrid-2013.html
Se hace un homenaje a su juego. 
Saludos]]></description>
		<content:encoded><![CDATA[<p>Es posible que este fin de semana le encuentres si te acercas a <a href="http://www.microsiervos.com/archivo/ordenadores/retromadrid-2013.html" rel="nofollow">http://www.microsiervos.com/archivo/ordenadores/retromadrid-2013.html</a><br />
Se hace un homenaje a su juego.<br />
Saludos</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Aprovechando la potencia de GNU Common Lisp (GCL) by jsancho</title>
		<link>http://www.jsancho.org/2008/09/06/138/comment-page-1#comment-581</link>
		<dc:creator>jsancho</dc:creator>
		<pubDate>Fri, 05 Oct 2012 15:07:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.jsancho.org/2008/09/06/138/#comment-581</guid>
		<description><![CDATA[Como este proceso lo que hace es crear una copia del intérprete, cuando arrancas el ejecutable te arranca la copia del intérprete :-)

Tendrás que decirle que ejecute una función tuya nada más arrancar. Yo lo haría así:

&gt; (setq si::*TOP-LEVEL-HOOK* (lambda () (pprint &quot;Hola mundo&quot;) (bye)))

En *TOP-LEVEL-HOOK*, que por defecto tiene nil, es posible decirle una función y la ejecutará antes de mostrarte el prompt.

Ahora ya puedes crear la copia. El ejemplo que te pasé es la forma de enlazar GCL con librerías en C, etc, etc, pero para este caso sencillo te basta con hacer (si::save-system &quot;holamundo&quot;). Te creará un ejecutable con el nombre &quot;holamundo&quot; que al ejecutarlo te pintará &quot;Hola mundo&quot; y saldrá.

También te pinta la información de GCL (licencia, ...), que me suena que también se podía quitar jugando con variables globales de GCL.]]></description>
		<content:encoded><![CDATA[<p>Como este proceso lo que hace es crear una copia del intérprete, cuando arrancas el ejecutable te arranca la copia del intérprete <img src='http://www.jsancho.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Tendrás que decirle que ejecute una función tuya nada más arrancar. Yo lo haría así:</p>
<p>> (setq si::*TOP-LEVEL-HOOK* (lambda () (pprint &#8220;Hola mundo&#8221;) (bye)))</p>
<p>En *TOP-LEVEL-HOOK*, que por defecto tiene nil, es posible decirle una función y la ejecutará antes de mostrarte el prompt.</p>
<p>Ahora ya puedes crear la copia. El ejemplo que te pasé es la forma de enlazar GCL con librerías en C, etc, etc, pero para este caso sencillo te basta con hacer (si::save-system &#8220;holamundo&#8221;). Te creará un ejecutable con el nombre &#8220;holamundo&#8221; que al ejecutarlo te pintará &#8220;Hola mundo&#8221; y saldrá.</p>
<p>También te pinta la información de GCL (licencia, &#8230;), que me suena que también se podía quitar jugando con variables globales de GCL.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Aprovechando la potencia de GNU Common Lisp (GCL) by luis</title>
		<link>http://www.jsancho.org/2008/09/06/138/comment-page-1#comment-580</link>
		<dc:creator>luis</dc:creator>
		<pubDate>Thu, 04 Oct 2012 12:32:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.jsancho.org/2008/09/06/138/#comment-580</guid>
		<description><![CDATA[Guiándome por el ejemplo hice lo siguiente:
(compile-file &quot;p.lsp&quot;:system-p t)
luego:
(compiler::link &#039;(&quot;p.o&quot;) &quot;p&quot;)
Pero no funcionó.
Probé entonces con la definición del macro, por si me había faltado algo al compilar:
(defmacro compile-gfile (file-name &amp;key include)
`(progn
 (setq compiler::*cc* (concatenate &#039;string compiler::*cc* ,include &quot; &quot;))
 (compile-file ,file-name :system-p t)))
luego:
(compile-gfile &quot;p.lsp&quot;)
y finalmente:
(compiler::link &#039;(&quot;p.o&quot;) &quot;p&quot;)
En ambos casos el ejecutable p pesaba más de 24 mb, pero al compilarlo sólo me abría gcl
mostrándome lo siguiente:
luis@luis-LAP:~/Escritorio$ ./p
GCL (GNU Common Lisp)  2.6.7 CLtL1    Feb  1 2012 08:59:12
Source License: LGPL(gcl,gmp), GPL(unexec,bfd,xgcl)
Binary License:  GPL due to GPL&#039;ed components: (XGCL READLINE UNEXEC)
Modifications of this banner must retain notice of a compatible license
Dedicated to the memory of W. Schelter

Use (help) to get some basic information on how to use GCL.
Temporary directory for compiler files set to /tmp/

&gt;

No sé donde está el problema. ¿Puedes ver que falta o sobra?
Saludos]]></description>
		<content:encoded><![CDATA[<p>Guiándome por el ejemplo hice lo siguiente:<br />
(compile-file &#8220;p.lsp&#8221;:system-p t)<br />
luego:<br />
(compiler::link &#8216;(&#8220;p.o&#8221;) &#8220;p&#8221;)<br />
Pero no funcionó.<br />
Probé entonces con la definición del macro, por si me había faltado algo al compilar:<br />
(defmacro compile-gfile (file-name &amp;key include)<br />
`(progn<br />
 (setq compiler::*cc* (concatenate &#8216;string compiler::*cc* ,include &#8221; &#8220;))<br />
 (compile-file ,file-name :system-p t)))<br />
luego:<br />
(compile-gfile &#8220;p.lsp&#8221;)<br />
y finalmente:<br />
(compiler::link &#8216;(&#8220;p.o&#8221;) &#8220;p&#8221;)<br />
En ambos casos el ejecutable p pesaba más de 24 mb, pero al compilarlo sólo me abría gcl<br />
mostrándome lo siguiente:<br />
luis@luis-LAP:~/Escritorio$ ./p<br />
GCL (GNU Common Lisp)  2.6.7 CLtL1    Feb  1 2012 08:59:12<br />
Source License: LGPL(gcl,gmp), GPL(unexec,bfd,xgcl)<br />
Binary License:  GPL due to GPL&#8217;ed components: (XGCL READLINE UNEXEC)<br />
Modifications of this banner must retain notice of a compatible license<br />
Dedicated to the memory of W. Schelter</p>
<p>Use (help) to get some basic information on how to use GCL.<br />
Temporary directory for compiler files set to /tmp/</p>
<p>&gt;</p>
<p>No sé donde está el problema. ¿Puedes ver que falta o sobra?<br />
Saludos</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Aprovechando la potencia de GNU Common Lisp (GCL) by jsancho</title>
		<link>http://www.jsancho.org/2008/09/06/138/comment-page-1#comment-579</link>
		<dc:creator>jsancho</dc:creator>
		<pubDate>Thu, 04 Oct 2012 08:09:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.jsancho.org/2008/09/06/138/#comment-579</guid>
		<description><![CDATA[Vale, ya comprendo.

Un programa en Lisp necesita del intérprete para funcionar, por el tema de tipado dinámico, recolección de basura, etc. Cuando creas un ejecutable con GCL, lo que hace es integrar tu programa con todo el intérprete, por lo que te queda un fichero inmenso de 10Mb por lo menos para hacer un &quot;hola mundo&quot; :-(  Si la cosa no ha cambiado, es lo que creo que hace Maxima para crear sus ejecutables, con compile-file y compiler::link.

Trabajo en un lenguaje funcional para desarrollo de juegos. Al principio lo basé en GCL y actualmente uso GNU Guile, basado a su vez en Scheme. En http://hg.savannah.gnu.org/hgweb/gacela/file/1bed4ac986d3/gacela_make.lisp tienes un buen ejemplo de crear ejecutables con GCL, enlazando con librerías (en mi caso SDL y GL). Documentación sobre ésto hay muy poca, me costó bastante de descubrir, pero en la lista de Maxima o de GCL es probable que también te puedan orientar sobre detalles específicos.

Ánimo, que estás entrando en un mundo apasionante :-)]]></description>
		<content:encoded><![CDATA[<p>Vale, ya comprendo.</p>
<p>Un programa en Lisp necesita del intérprete para funcionar, por el tema de tipado dinámico, recolección de basura, etc. Cuando creas un ejecutable con GCL, lo que hace es integrar tu programa con todo el intérprete, por lo que te queda un fichero inmenso de 10Mb por lo menos para hacer un &#8220;hola mundo&#8221; <img src='http://www.jsancho.org/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' />   Si la cosa no ha cambiado, es lo que creo que hace Maxima para crear sus ejecutables, con compile-file y compiler::link.</p>
<p>Trabajo en un lenguaje funcional para desarrollo de juegos. Al principio lo basé en GCL y actualmente uso GNU Guile, basado a su vez en Scheme. En <a href="http://hg.savannah.gnu.org/hgweb/gacela/file/1bed4ac986d3/gacela_make.lisp" rel="nofollow">http://hg.savannah.gnu.org/hgweb/gacela/file/1bed4ac986d3/gacela_make.lisp</a> tienes un buen ejemplo de crear ejecutables con GCL, enlazando con librerías (en mi caso SDL y GL). Documentación sobre ésto hay muy poca, me costó bastante de descubrir, pero en la lista de Maxima o de GCL es probable que también te puedan orientar sobre detalles específicos.</p>
<p>Ánimo, que estás entrando en un mundo apasionante <img src='http://www.jsancho.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Aprovechando la potencia de GNU Common Lisp (GCL) by luis</title>
		<link>http://www.jsancho.org/2008/09/06/138/comment-page-1#comment-578</link>
		<dc:creator>luis</dc:creator>
		<pubDate>Thu, 04 Oct 2012 07:41:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.jsancho.org/2008/09/06/138/#comment-578</guid>
		<description><![CDATA[Ok:
Cuando dije que quería ejecutar el programa en cualquier computadora me refería bajo entorno Linux. Lo que pretendo obtener, es un binario para ejecutarlo en terminal con ./nombre_del_ejecutable
Lo que he podido lograr hasta el momento es:
Escribí en el archivo p.lsp:
(pprint “Hola mundo”)
Luego, dentro de gcl ejecuté:
(compile-file &quot;p.lsp&quot;)
Esto crea el código objeto p.o, el cual puedo cargar dentro de gcl con:
(load &quot;p.o&quot;)
Esto hace que me imprima “Hola mundo”, la salida completa es:
Loading p.o

&quot;Hola mundo&quot;start address -T 0x1630100 
Finished loading p.o
Supongo con esto, que se ejecutó la instrucción (pprint “Hola mundo”)
Pero lo que no he podido es obtener un binario p partiendo de p.o, de manera que al ejecutar
./p en un terminal fuera de gcl me imprima hola mundo como lo haría fortran o c.
gracias por tu respuesta y disculpa mi insistencia, pero creo que para aprender hay que ser un poco cabeza dura. 
Me interesa aprender common lisp porque pretendo colaborar en un futuro en el proyecto Maxima, que está escrito en este lenguaje.
Saludos]]></description>
		<content:encoded><![CDATA[<p>Ok:<br />
Cuando dije que quería ejecutar el programa en cualquier computadora me refería bajo entorno Linux. Lo que pretendo obtener, es un binario para ejecutarlo en terminal con ./nombre_del_ejecutable<br />
Lo que he podido lograr hasta el momento es:<br />
Escribí en el archivo p.lsp:<br />
(pprint “Hola mundo”)<br />
Luego, dentro de gcl ejecuté:<br />
(compile-file &#8220;p.lsp&#8221;)<br />
Esto crea el código objeto p.o, el cual puedo cargar dentro de gcl con:<br />
(load &#8220;p.o&#8221;)<br />
Esto hace que me imprima “Hola mundo”, la salida completa es:<br />
Loading p.o</p>
<p>&#8220;Hola mundo&#8221;start address -T 0&#215;1630100<br />
Finished loading p.o<br />
Supongo con esto, que se ejecutó la instrucción (pprint “Hola mundo”)<br />
Pero lo que no he podido es obtener un binario p partiendo de p.o, de manera que al ejecutar<br />
./p en un terminal fuera de gcl me imprima hola mundo como lo haría fortran o c.<br />
gracias por tu respuesta y disculpa mi insistencia, pero creo que para aprender hay que ser un poco cabeza dura.<br />
Me interesa aprender common lisp porque pretendo colaborar en un futuro en el proyecto Maxima, que está escrito en este lenguaje.<br />
Saludos</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Aprovechando la potencia de GNU Common Lisp (GCL) by jsancho</title>
		<link>http://www.jsancho.org/2008/09/06/138/comment-page-1#comment-575</link>
		<dc:creator>jsancho</dc:creator>
		<pubDate>Sun, 30 Sep 2012 06:38:06 +0000</pubDate>
		<guid isPermaLink="false">http://www.jsancho.org/2008/09/06/138/#comment-575</guid>
		<description><![CDATA[Es sencillo:
(pprint &quot;Hola mundo&quot;)

Pero Lisp es un lenguaje interpretado y necesitarás el intérprete correspondiente a la arquitectura en la que estes trabajando. Es como con Java, que necesitas descargar la máquina virtual adecuada a cada sistema operativo.

Y aunque algunas implementaciones de Lisp permiten compilar, aún así necesitarías compilar en cada una de las arquitecturas en las que quieras que corra tu programa. Es igual que en C. Un programa compilado en GNU/Linux no funcionará en Windows.]]></description>
		<content:encoded><![CDATA[<p>Es sencillo:<br />
(pprint &#8220;Hola mundo&#8221;)</p>
<p>Pero Lisp es un lenguaje interpretado y necesitarás el intérprete correspondiente a la arquitectura en la que estes trabajando. Es como con Java, que necesitas descargar la máquina virtual adecuada a cada sistema operativo.</p>
<p>Y aunque algunas implementaciones de Lisp permiten compilar, aún así necesitarías compilar en cada una de las arquitecturas en las que quieras que corra tu programa. Es igual que en C. Un programa compilado en GNU/Linux no funcionará en Windows.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Aprovechando la potencia de GNU Common Lisp (GCL) by luis</title>
		<link>http://www.jsancho.org/2008/09/06/138/comment-page-1#comment-574</link>
		<dc:creator>luis</dc:creator>
		<pubDate>Sun, 30 Sep 2012 06:05:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.jsancho.org/2008/09/06/138/#comment-574</guid>
		<description><![CDATA[Hola:
Ya instalé gcl en kubuntu mediante:
sudo apt.-get install gcl
ahora quiero escribir el clásico &quot;hola mundo&quot; en Cammon Lisp
¿Que escribo en el archivo holamundo.lsp y como lo compilo desde terminal para obtener un binario final que pueda ejecutarse en cualquier computadora?
gracias]]></description>
		<content:encoded><![CDATA[<p>Hola:<br />
Ya instalé gcl en kubuntu mediante:<br />
sudo apt.-get install gcl<br />
ahora quiero escribir el clásico &#8220;hola mundo&#8221; en Cammon Lisp<br />
¿Que escribo en el archivo holamundo.lsp y como lo compilo desde terminal para obtener un binario final que pueda ejecutarse en cualquier computadora?<br />
gracias</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Lotb, un sistema multiblog GPL by jsancho</title>
		<link>http://www.jsancho.org/2007/03/30/129/comment-page-1#comment-545</link>
		<dc:creator>jsancho</dc:creator>
		<pubDate>Wed, 25 Jul 2012 15:01:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.jsancho.org/2007/03/30/129/#comment-545</guid>
		<description><![CDATA[&lt;a href=&quot;#comment-544&quot; rel=&quot;nofollow&quot;&gt;@Yoga &lt;/a&gt;

El proyecto está abandonado. En su día podía conectar con varios wordpress al mismo tiempo para hacer algunas cosas, pero ahora desconozco si el plugin en cuestión seguirá funcionando. Supongo que necesitará alguna actualización.

Si te animas, el código fuente está disponible, aunque ahora yo usaría Python para desarrollar la parte del servidor.]]></description>
		<content:encoded><![CDATA[<p><a href="#comment-544" rel="nofollow">@Yoga </a></p>
<p>El proyecto está abandonado. En su día podía conectar con varios wordpress al mismo tiempo para hacer algunas cosas, pero ahora desconozco si el plugin en cuestión seguirá funcionando. Supongo que necesitará alguna actualización.</p>
<p>Si te animas, el código fuente está disponible, aunque ahora yo usaría Python para desarrollar la parte del servidor.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Lotb, un sistema multiblog GPL by Yoga</title>
		<link>http://www.jsancho.org/2007/03/30/129/comment-page-1#comment-544</link>
		<dc:creator>Yoga</dc:creator>
		<pubDate>Wed, 25 Jul 2012 11:04:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.jsancho.org/2007/03/30/129/#comment-544</guid>
		<description><![CDATA[Hola,

Veo que esto es de 2007, como ha acabado el tema?? me interesa el tema de poder administrar varios wordpress por ejemplo desde una misma plataforma.]]></description>
		<content:encoded><![CDATA[<p>Hola,</p>
<p>Veo que esto es de 2007, como ha acabado el tema?? me interesa el tema de poder administrar varios wordpress por ejemplo desde una misma plataforma.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
