<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Mundo Geek &#187; curiosidades</title>
	<atom:link href="http://mundogeek.net/etiqueta/curiosidades/feed/" rel="self" type="application/rss+xml" />
	<link>http://mundogeek.net</link>
	<description>Mundo geek, bitácora sobre todo lo geek: software, gadgets, tecnología, internet, ...</description>
	<lastBuildDate>Fri, 25 May 2012 14:51:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Código Konami en la web del candidato a las presidenciales francesas</title>
		<link>http://mundogeek.net/archivos/2012/04/16/codigo-konami-en-la-web-del-candidato-a-las-presidenciales-francesas/</link>
		<comments>http://mundogeek.net/archivos/2012/04/16/codigo-konami-en-la-web-del-candidato-a-las-presidenciales-francesas/#comments</comments>
		<pubDate>Mon, 16 Apr 2012 20:53:55 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[codigo konami]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[konami]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=7882</guid>
		<description><![CDATA[No le puedes pedir a un político que no robe, no mienta y no manipule; está en sus genes y lo más probable es que termine por decepcionarte. Lo que sí puedes pedirles, al menos durante la campaña electoral, es que te entretengan. Prueba a introducir el código Konami en la página del candidato a [...]]]></description>
			<content:encoded><![CDATA[<p>No le puedes pedir a un político que no robe, no mienta y no manipule; está en sus genes y lo más probable es que termine por decepcionarte. Lo que sí puedes pedirles, al menos  durante la campaña electoral, es que te entretengan. Prueba a introducir el código Konami en la página del candidato a las elecciones presidenciales francesas por Movimiento Democrático, <a href="http://bayrou.fr/" title="François Bayrou">François Bayrou</a>. Buen marketing viral.</p>
<p><img src="http://mundogeek.net/wp-content/codigo-konami.png" alt="Código Konami"/></p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2012/04/16/codigo-konami-en-la-web-del-candidato-a-las-presidenciales-francesas/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
		<item>
		<title>El papel carbón y los correos electrónicos</title>
		<link>http://mundogeek.net/archivos/2012/04/11/el-papel-carbon-y-los-correos-electronicos/</link>
		<comments>http://mundogeek.net/archivos/2012/04/11/el-papel-carbon-y-los-correos-electronicos/#comments</comments>
		<pubDate>Wed, 11 Apr 2012 15:55:00 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[copias]]></category>
		<category><![CDATA[correos]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[historia]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=7861</guid>
		<description><![CDATA[Aunque es algo que usamos a menudo muchos desconocen el origen y el significado de las siglas Cc (Carbon copy, copia de carbón, o Con copia) y Bcc (Blind carbon copy, copia de carbón oculta, o Con copia oculta) que permiten, respectivamente, enviar una copia del correo y enviar una copia del correo oculta a [...]]]></description>
			<content:encoded><![CDATA[<p>Aunque es algo que usamos a menudo muchos desconocen el origen y el significado de las siglas Cc (<em>Carbon copy</em>, copia de carbón, o Con copia) y Bcc (<em>Blind carbon copy</em>, copia de carbón oculta, o Con copia oculta) que permiten, respectivamente, enviar una copia del correo y enviar una copia del correo oculta a otros contactos.</p>
<p>Mucho antes de que se inventara la fotocopiadora (1959), antes de que en el MIT empezaran a usar mensajes electrónicos para compartir información (1965), antes de que Ray Tomlinson incorporara el uso de la arroba para poder enviar mensajes a usuarios de otras máquinas (1971), el método más popular para hacer copias de los escritos era el papel carbón o papel de calco.<span id="more-7861"></span></p>
<div style="text-align:center"><img src="http://mundogeek.net/wp-content/papel-carbon.png" alt="Hoja de papel carbón, vía Wikipedia"/></div>
<p>Quizás lo hayas visto usar, por ejemplo, a la hora de escribir un cheque, aunque su uso hoy en día es casi testimonial. Básicamente consiste en una hoja con carbón o tinta impregnada en una de sus caras que se coloca entre la hoja en que escribiremos y una hoja en blanco, de forma que la tinta se traspase a la hoja en blanco por la simple presión de la escritura.</p>
<p>La etiqueta de la época dictaba que las copias así conseguidas incluyeran los nombres de las personas que iban a recibirlas, precedidos de la abreviatura &#8220;cc&#8221;, costumbre que se trasladó a los correos electrónicos.</p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2012/04/11/el-papel-carbon-y-los-correos-electronicos/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>¿Podría la Estrella de la Muerte destruir la Tierra?</title>
		<link>http://mundogeek.net/archivos/2012/01/19/podria-la-estrella-de-la-muerte-destruir-la-tierra/</link>
		<comments>http://mundogeek.net/archivos/2012/01/19/podria-la-estrella-de-la-muerte-destruir-la-tierra/#comments</comments>
		<pubDate>Thu, 19 Jan 2012 16:30:34 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[astronomia]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[fisica]]></category>
		<category><![CDATA[preguntas]]></category>
		<category><![CDATA[star-wars]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=7623</guid>
		<description><![CDATA[Que hay gente que tiene demasiado tiempo libre ya nos quedó claro cuando los chicos de Wolf Gnards se dedicaron a calcular cuánto tiempo podríamos sobrevivir dentro del cadáver de un Tauntaun, al más puro estilo Luke Skywalker en Star Wars. También, cuando descubrimos las elaboradas respuestas que algunas personas ofrecían a la pregunta de [...]]]></description>
			<content:encoded><![CDATA[<p>Que hay gente que tiene demasiado tiempo libre ya nos quedó claro cuando los chicos de Wolf Gnards se dedicaron a calcular <a href="http://mundogeek.net/archivos/2009/12/15/en-el-remoto-mundo-helado-de-hoth/" title="¿Cuánto tiempo podrías sobrevivir dentro del cadáver de un Tauntaun en Hoth?">cuánto tiempo podríamos sobrevivir dentro del cadáver de un Tauntaun</a>, al más puro estilo Luke Skywalker en Star Wars. También, cuando descubrimos las elaboradas respuestas que algunas personas ofrecían a la pregunta de si <a href="http://mundogeek.net/archivos/2009/10/13/podria-un-jedi-atravesar-a-superman-con-un-sable-de-luz/" title="¿Podría un jedi atravesar a Superman con un sable de luz?">un jedi podría atravesar a Superman con un sable de luz</a>.</p>
<p><img src="http://mundogeek.net/wp-content/estrella-muerte-tierra.jpg" alt="¿Podría la Estrella de la Muerte destruir la Tierra?"/><span id="more-7623"></span></p>
<p>Si, como a mí, te encantan estas disertaciones inútiles con un toque de humor  geek, también te encantará el último artículo del Departamento de Física y Astronomía de la Universidad de Leicester, en el que calculan <a href="https://physics.le.ac.uk/journals/index.php/pst/article/view/328/195">cuánta energía necesitaría la Estrella de la Muerte para destruir un planeta</a>, y si el malvado Imperio podría utilizarla para destruir la Tierra. Ya os adelanto que sí: <a href="http://www.abc.es/20120119/ciencia/abci-podria-estrella-muerte-destruir-201201191325.html">no estamos seguros</a>. Tendremos que mudarnos a un planeta algo mayor que Júpiter.</p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2012/01/19/podria-la-estrella-de-la-muerte-destruir-la-tierra/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>De La Comarca a Mordor, según Google Maps</title>
		<link>http://mundogeek.net/archivos/2011/12/20/de-la-comarca-a-mordor-segun-google-maps/</link>
		<comments>http://mundogeek.net/archivos/2011/12/20/de-la-comarca-a-mordor-segun-google-maps/#comments</comments>
		<pubDate>Tue, 20 Dec 2011 17:54:34 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[esdla]]></category>
		<category><![CDATA[geek]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[google maps]]></category>
		<category><![CDATA[mordor]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=7550</guid>
		<description><![CDATA[Estos pequeños detalles son los que hacen de Google una compañía tan querida entre los geeks a pesar de su, en ocasiones, alarmante afición por recopilar datos: si buscamos la ruta para ir andando de La Comarca (The Shire) a Mordor en Google Maps, usando el idioma inglés, nos avisará de que tengamos cuidado porque [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.reddit.com/r/funny/comments/ncbfv/google_maps_answer_from_the_shire_to_mordor/" title="Google maps answer From The Shire to Mordor">Estos</a> pequeños detalles son los que hacen de Google una compañía tan querida entre los geeks a pesar de su, en ocasiones, alarmante afición por recopilar datos: si buscamos la ruta para ir andando de La Comarca (The Shire) a Mordor en <a href="http://maps.google.es/maps?hl=en" title="Google Maps en inglés">Google Maps, usando el idioma inglés</a>, nos avisará de que tengamos cuidado porque &#8220;One does not simply walk into Mordor&#8221; (≈ uno no entra en Mordor así como así) la famosa frase que pronuncia Boromir en el Concilio de Elrond, la cuál dio lugar en su día a un <a href="http://knowyourmeme.com/memes/one-does-not-simply-walk-into-mordor" title="One Does Not Simply Walk into Mordor">popular meme</a>.</p>
<div style="text-align:center">
<p><img src="http://mundogeek.net/wp-content/mordor-google-maps.png" alt="De La Comarca a Mordor, según Google Maps"/></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2011/12/20/de-la-comarca-a-mordor-segun-google-maps/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>El nuevo móvil Nokia para mujeres de malvivir</title>
		<link>http://mundogeek.net/archivos/2011/11/25/el-nuevo-movil-nokia-para-mujeres-de-malvivir/</link>
		<comments>http://mundogeek.net/archivos/2011/11/25/el-nuevo-movil-nokia-para-mujeres-de-malvivir/#comments</comments>
		<pubDate>Fri, 25 Nov 2011 17:00:51 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[moviles]]></category>
		<category><![CDATA[nokia]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=7473</guid>
		<description><![CDATA[Ayer desembarcó en tierras españolas el primer móvil Nokia en utilizar Windows Phone como sistema operativo: el Nokia Lumia 800. Este nuevo buque insignia de la compañía finesa, tiene, además de una hoja de especificaciones bastante interesante, un nombre de lo más desafortunado, aunque quizás no tanto como el famoso Mitsubishi Pajero. Sí, lo habéis [...]]]></description>
			<content:encoded><![CDATA[<p>Ayer desembarcó en tierras españolas el primer móvil Nokia en utilizar Windows Phone como sistema operativo: el <a href="http://www.nokia.es/es-es/productos/moviles/lumia800/" title="Nokia Lumia 800">Nokia Lumia 800</a>. Este nuevo buque insignia de la compañía finesa, tiene, además de una hoja de especificaciones bastante interesante, un nombre de lo más desafortunado, aunque quizás no tanto como el famoso <a href="http://es.wikipedia.org/wiki/Mitsubishi_Pajero">Mitsubishi Pajero</a>.</p>
<div style="text-align:center"><img src="http://mundogeek.net/wp-content/nokia-lumia.png" alt="Nokia Lumia, un móvil con un nombre desafortunado"/></div>
<p>Sí, lo habéis adivinado; aunque quizás estéis más familiarizados con su derivado <em>lumi</em>, lumia no tiene nada que ver con la luz. Al menos en castellano. Según la RAE, lumia es una palabra en desuso, de orígen incierto, que significa prostituta, meretriz, cortesana, fulana, furcia, ramera o mesalina. En una palabra: puta.</p>
<p>Lo más curioso es que la compañía <a href="http://www.cadenaser.com/tecnologia/articulo/nokia-eligio-nombre-lumia-pese-saber-significa-prostituta-espanol/csrcsrpor/20111103csrcsrtec_1/Tes" title="Nokia eligió el nombre 'Lumia' pese a saber que significa prostituta en español">estaba al tanto</a> del significado de este término en castellano, gracias a su equipo de lingüistas, que estudia las posibles connotaciones negativas de todas las marcas propuestas, pero decidieron seguir adelante <a href="http://conversations.nokia.com/2011/11/02/naming-the-nokia-lumia/" title="Naming the Nokia Lumia">después de un estudio de mercado</a> en el que el 60% de los españoles encuestados afirmaron que era un gran nombre para un móvil.</p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2011/11/25/el-nuevo-movil-nokia-para-mujeres-de-malvivir/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>¿Cuánto pesa Internet?</title>
		<link>http://mundogeek.net/archivos/2011/11/02/cuanto-pesa-internet/</link>
		<comments>http://mundogeek.net/archivos/2011/11/02/cuanto-pesa-internet/#comments</comments>
		<pubDate>Wed, 02 Nov 2011 16:32:55 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[corriente]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[electrones]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[masa]]></category>
		<category><![CDATA[peso]]></category>
		<category><![CDATA[videos]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=7383</guid>
		<description><![CDATA[¿Cuánto dirías que podrían pesar los electrones de todos los condensadores necesarios para almacenar toda la información de Internet? ¿y la corriente eléctrica utilizada para alimentar todos los equipos conectados a la red? Como no quiero destriparte nada, si tienes curiosidad, tendrás que ver el siguiente vídeo. Sólo te diré que son números sorprendentes.]]></description>
			<content:encoded><![CDATA[<p>¿Cuánto dirías que podrían pesar los electrones de todos los condensadores necesarios para almacenar toda la información de Internet? ¿y la corriente eléctrica utilizada para alimentar todos los equipos conectados a la red? Como no quiero destriparte nada, si tienes curiosidad, tendrás que ver el siguiente vídeo. Sólo te diré que son números sorprendentes.</p>
<p><iframe width="560" height="315" src="http://www.youtube.com/embed/WaUzu-iksi8" frameborder="0" allowfullscreen></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2011/11/02/cuanto-pesa-internet/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>Si el ojo humano fuera una cámara fotográfica&#8230;</title>
		<link>http://mundogeek.net/archivos/2011/08/22/si-el-ojo-humano-fuera-una-camara-fotografica/</link>
		<comments>http://mundogeek.net/archivos/2011/08/22/si-el-ojo-humano-fuera-una-camara-fotografica/#comments</comments>
		<pubDate>Mon, 22 Aug 2011 15:36:59 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[camara]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[fotografía]]></category>
		<category><![CDATA[ojo]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=7211</guid>
		<description><![CDATA[Si el ojo humano fuese una cámara de fotos tendría 576 megapíxeles de resolución, una sensibilidad máxima de 800 ISO, un rango dinámico medio de 10.000:1 (13,5 pasos) y un rango dinámico máximo de 1.000.000:1 (20 pasos). En comparación, la Canon EOS 600D, premio TIPA 2011 a la mejor réflex para principiantes, cuenta con un [...]]]></description>
			<content:encoded><![CDATA[<p>Si el ojo humano <a href="http://clarkvision.com/imagedetail/eye-resolution.html" title="Notes on the Resolution and Other Details of the Human Eye ">fuese una cámara de fotos</a> tendría 576 megapíxeles de resolución, una sensibilidad máxima de 800 ISO, un rango dinámico medio de 10.000:1 (13,5 pasos) y un rango dinámico máximo de 1.000.000:1 (20 pasos).</p>
<div style="text-align:center"><img src="http://mundogeek.net/wp-content/camara-ojo.jpg" alt="El ojo como cámara fotográfica"/></div>
<p><br/></p>
<p>En comparación, la Canon EOS 600D, premio TIPA 2011 a la <a href="http://www.tipa.com/spanish/award-details.php?iId=2914&#038;sAward=Best%20DSLR+Entry+Level" title="TIPA 2011: Best DSLR Entry Level">mejor réflex para principiantes</a>, cuenta con un sensor de 18 megapíxeles, sensibilidad máxima de 6400 ISO (12800 forzados) y rango dinámico de 11,5 pasos.</p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2011/08/22/si-el-ojo-humano-fuera-una-camara-fotografica/feed/</wfw:commentRss>
		<slash:comments>25</slash:comments>
		</item>
		<item>
		<title>Un programa escrito en Haskell, que imprime un programa en Perl, que imprime&#8230;</title>
		<link>http://mundogeek.net/archivos/2011/03/15/un-programa-escrito-en-haskell-que-imprime-un-programa-en-perl-que-imprime/</link>
		<comments>http://mundogeek.net/archivos/2011/03/15/un-programa-escrito-en-haskell-que-imprime-un-programa-en-perl-que-imprime/#comments</comments>
		<pubDate>Tue, 15 Mar 2011 16:37:51 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[c]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[haskell]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[perl]]></category>
		<category><![CDATA[programacion]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[quine]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=6522</guid>
		<description><![CDATA[¿Un programa escrito en Haskell, que al ejecutarse imprime un programa en Perl, que al ejecutarse imprime un programa en Python, que al ejecutarse imprime un programa en Ruby, que al ejecutarse imprime un programa en C, que al ejecutarse imprime un programa en Java, que al ejecutarse imprime el programa original? Sí, es como [...]]]></description>
			<content:encoded><![CDATA[<p>¿Un <a href="http://blog.sigfpe.com/2011/01/quine-central.html" title="Quine central">programa</a> escrito en Haskell, que al ejecutarse imprime un programa en Perl, que al ejecutarse imprime un programa en Python, que al ejecutarse imprime un programa en Ruby, que al ejecutarse imprime un programa en C, que al ejecutarse imprime un programa en Java, que al ejecutarse imprime el programa original? Sí, es como para que te duela la cabeza, aunque el código, que podéis ver después del salto, es de lo más sencillo.</p>
<p>Este tipo de programas que se imprimen a sí mismos como salida (aunque en este caso, con una peculiaridad extra) se conocen con el nombre de <em>quines</em>, en honor al filósofo estadounidense Willard Van Orman Quine.<span id="more-6522"></span></p>
<pre name="code" class="haskell">import Data.List

langs = [Haskell, Perl, Python, Ruby, C, Java]

data Languages = Haskell | Ruby | Perl | C | Python | Java

sequenceFromString Haskell s = "map toEnum[" ++ (intercalate "," $
    map (\c -> show (fromEnum c)) s) ++ "]"
sequenceFromString Perl s    = (intercalate "," $
    map (\c -> "chr(" ++ show (fromEnum c) ++ ")") s)
sequenceFromString Python s  = (intercalate "+" $
    map (\c -> "chr(" ++ show (fromEnum c) ++ ")") s)
sequenceFromString Ruby s    = (intercalate "+" $
    map (\c -> show (fromEnum c) ++ ".chr") s)
sequenceFromString C s       = concatMap
    (\c -> "putchar(" ++ show (fromEnum c) ++ ");") s
sequenceFromString Java s    = concatMap
    (\c -> "o.write(" ++ show (fromEnum c) ++ ");") s

paramList' Haskell = intercalate " " . map (\n -> "a" ++ show n)
paramList' C       = intercalate "," . map (\n -> "char *a" ++ show n)
paramList' Python  = intercalate "," . map (\n -> "a" ++ show n)
paramList' Ruby    = intercalate "," . map (\n -> "a" ++ show n)
paramList' Java    = intercalate "," . map (\n -> "String a" ++ show n)

paramList Perl    _ = ""
paramList lang n = paramList' lang [0..n-1]

driver l args = defn l ++ intercalate (divider l) args ++ endDefn l

divider C       = "\",\""
divider Perl    = "','"
divider Ruby    = "\",\""
divider Python  = "\",\""
divider Haskell = "\" \""
divider Java    = "\",\""

defn C       = "main(){q(\""
defn Perl    = "&#038;q('"
defn Python  = "q(\""
defn Ruby    = "q(\""
defn Haskell = "main=q \""
defn Java    = "public static void main(String[]args){q(\""

endDefn C       = "\");}"
endDefn Perl    = "')"
endDefn Python  = "\")"
endDefn Ruby    = "\")"
endDefn Haskell = "\""
endDefn Java    = "\");}}"

arg Haskell n = "a" ++ show n
arg Perl n    = "$_[" ++ show n ++ "]"
arg C n       = "printf(a" ++ show n ++ ");"
arg Python n  = "a" ++ show n
arg Ruby n    = "a" ++ show n
arg Java n    = "o.print(a" ++ show n ++ ");"

argDivide Haskell l = "++" ++ sequenceFromString Haskell (divider l) ++ "++"
argDivide Perl l    = ","    ++ sequenceFromString Perl (divider l) ++ ","
argDivide C l       = sequenceFromString C (divider l)
argDivide Python l  = "+" ++ sequenceFromString Python (divider l) ++ "+"
argDivide Ruby l    = "+" ++ sequenceFromString Ruby (divider l) ++ "+"
argDivide Java l    = sequenceFromString Java (divider l)

argList lang1 lang2 n = intercalate (argDivide lang1 lang2) $
    map (arg lang1) ([1..n-1] ++ [0])

fromTo Haskell l n = "q " ++ paramList Haskell n ++ "=putStrLn$a0++" ++
    sequenceFromString Haskell ("\n" ++ defn l) ++ "++" ++
    argList Haskell l n ++ "++" ++ sequenceFromString Haskell (endDefn l)
fromTo Perl    l n = "sub q {" ++ "print $_[0]," ++
    sequenceFromString Perl ("\n" ++ defn l) ++ "," ++ argList Perl l n ++ "," ++
    sequenceFromString Perl (endDefn l ++ "\n") ++ "}"
fromTo Python  l n = "def q(" ++ paramList Python n ++
    "): print a0+" ++ sequenceFromString Python ("\n" ++ defn l) ++
    "+" ++ argList Python l n ++ "+" ++ sequenceFromString Python (endDefn l)
fromTo Ruby    l n = "def q(" ++ paramList Ruby n ++
    ") print a0+" ++ sequenceFromString Ruby ("\n" ++ defn l) ++
    "+" ++ argList Ruby l n ++ "+" ++ sequenceFromString Ruby (endDefn l ++ "\n") ++ " end"
fromTo C       l n = "q(" ++ paramList C n ++ "){" ++ "printf(a0);" ++
    sequenceFromString C ("\n" ++ defn l) ++ argList C l n ++
    sequenceFromString C (endDefn l ++ "\n") ++ "}"
fromTo Java    l n = "public class quine{public static void q(" ++
    paramList Java n ++ "){java.io.PrintStream o=System.out;o.print(a0);" ++
    sequenceFromString Java ("\n" ++ defn l) ++ argList Java l n ++
    sequenceFromString Java (endDefn l ++ "\n") ++ "}"

main = do
    let n = length langs
    let langs' = cycle langs
    putStrLn $ fromTo (head langs') (head (tail langs')) n
    putStrLn $ driver (head langs') $ zipWith (\lang1 lang2 -> fromTo lang1 lang2 n)
        (take n (tail langs')) (tail (tail langs'))</pre>
<p><small><a href="http://news.ycombinator.com/item?id=2322145">Vía Hacker News</a></small></p>
<link type="text/css" rel="stylesheet" href="http://mundogeek.net/sh/css/SyntaxHighlighter.css"></link>
<script language="javascript" src="http://mundogeek.net/sh/js/shCore.js"></script><br />
<script language="javascript" src="http://mundogeek.net/sh/js/shBrushHaskell.js"></script><br />
<script language="javascript">dp.SyntaxHighlighter.ClipboardSwf = 'http://mundogeek.net/sh//flash/clipboard.swf';
dp.SyntaxHighlighter.HighlightAll('code');</script></p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2011/03/15/un-programa-escrito-en-haskell-que-imprime-un-programa-en-perl-que-imprime/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>El Paamayim nekudotayim de PHP</title>
		<link>http://mundogeek.net/archivos/2011/01/29/el-paamayim-nekudotayim-de-php/</link>
		<comments>http://mundogeek.net/archivos/2011/01/29/el-paamayim-nekudotayim-de-php/#comments</comments>
		<pubDate>Sat, 29 Jan 2011 10:38:06 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[paamayim nekudotayim]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programacion]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=6335</guid>
		<description><![CDATA[No, este título tan raro no es producto de un deface de algún hacker indio. Es hebreo (פעמיים נקודתיים), significa doble dos puntos, y es el nombre que recibe el token utilizado por el analizador léxico y el analizador sintáctico de PHP para representar el operador de resolución de ámbito del lenguaje (::), un operador [...]]]></description>
			<content:encoded><![CDATA[<p>No, este título tan raro no es producto de un <a href="http://es.wikipedia.org/wiki/Defacement" title="Definición de defacement en la Wikipedia">deface</a> de algún hacker indio. Es hebreo (פעמיים נקודתיים), significa doble dos puntos, y es el nombre que recibe el <a href="http://docs.php.net/manual/es/tokens.php" title="Lista de tokens de análisis">token</a> utilizado por el analizador léxico y el analizador sintáctico de PHP para representar el <a href="http://docs.php.net/manual/es/keyword.paamayim-nekudotayim.php" title="Operador de Resolución de Alcance (::)">operador de resolución de ámbito</a> del lenguaje (::), un operador que se utiliza para acceder a miembros estáticos de una clase, y a propiedades y métodos que han sido sobreescritos por una clase al heredar de otra.</p>
<p>&#8220;¿Y por qué hebreo?&#8221;, se preguntará alguno. El motivo es sencillo, y es que, como ya vimos en <a href="http://mundogeek.net/archivos/2011/01/26/una-no-tan-breve-historia-de-php/" title="Una no tan breve historia de PHP">Una no tan breve historia de PHP</a>, Zeev Suraski y Andi Gutmans, los dos programadores que crearon el Zend Engine, son ambos israelíes.<span id="more-6335"></span></p>
<p>Os podéis encontrar con este nombre tan críptico, por ejemplo, al utilizar el operador condicional ternario y repetir el carácter de dos puntos por accidente. Si probáis a ejecutar el siguiente código:</p>
<pre name="code" class="php">&lt;?php
$modo = $_SERVER['SERVER_NAME']!=='localhost'?'Debug'::'Producción';</pre>
<p>PHP os responderá con un mensaje parecido a este:</p>
<blockquote><p>Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM in /usr/local/apache/htdocs/ejemplo.php on line 2</p></blockquote>
<link type="text/css" rel="stylesheet" href="http://mundogeek.net/sh/css/SyntaxHighlighter.css"></link>
<script language="javascript" src="http://mundogeek.net/sh/js/shCore.js"></script><br />
<script language="javascript" src="http://mundogeek.net/sh/js/shBrushPhp.js"></script><br />
<script language="javascript">dp.SyntaxHighlighter.ClipboardSwf = 'http://mundogeek.net/sh//flash/clipboard.swf';
dp.SyntaxHighlighter.HighlightAll('code');</script></p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2011/01/29/el-paamayim-nekudotayim-de-php/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Avenida de Super Mario Bros, 24</title>
		<link>http://mundogeek.net/archivos/2010/11/07/avenida-de-super-mario-bros-24/</link>
		<comments>http://mundogeek.net/archivos/2010/11/07/avenida-de-super-mario-bros-24/#comments</comments>
		<pubDate>Sun, 07 Nov 2010 12:27:16 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[curiosidades]]></category>
		<category><![CDATA[mario]]></category>
		<category><![CDATA[videojuegos]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=6069</guid>
		<description><![CDATA[¿Te gustaría vivir en una calle con el nombre de uno de los personajes de los videojuegos más populares de todos los tiempos? Es perfectamente posible, si estás dispuesto a trasladarte a la bonita ciudad de Zaragoza (Aragón, España). Realmente voy a tener que consultar el precio de las casas de la zona, aunque sólo [...]]]></description>
			<content:encoded><![CDATA[<p>¿Te gustaría vivir en una calle con el nombre de <a href="http://mundogeek.net/archivos/2010/02/07/reinventando-a-mario/" title="Fondos de Super Mario Bros">uno de los personajes</a> de los videojuegos más populares de todos los tiempos? Es perfectamente posible, si estás dispuesto a trasladarte a la bonita ciudad de Zaragoza (Aragón, España). Realmente voy a tener que consultar el precio de las casas de la zona, aunque sólo sea por ver la cara que pondría el cartero.</p>
<div style="text-align:center"><img src="http://mundogeek.net/wp-content/avenida-super-mario-bros.jpg" alt="Avenida de Super Mario Bros"/></div>
<p>Más detalles y fotografías en <a href="http://www.viciojuegos.com/noticia/Asistimos-a-la-inauguracion-de-la-estatua-de-Mario-en-Zaragoza/25273">VicioJuegos</a>, cuyos redactores pasaron la mañana inspeccionando las setas y las tuberías de la zona.</p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2010/11/07/avenida-de-super-mario-bros-24/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
	</channel>
</rss>

