<?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>biestado &#187; C/C++</title>
	<atom:link href="http://biestado.kraptor.com/category/programacion/c-cpp/feed" rel="self" type="application/rss+xml" />
	<link>http://biestado.kraptor.com</link>
	<description>Al fin y al cabo todo es cuestión de unos y ceros...</description>
	<lastBuildDate>Mon, 03 Nov 2008 16:37:35 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>El desarrollo del kernel Linux en números</title>
		<link>http://biestado.kraptor.com/2008/04/03/el-desarrollo-del-kernel-linux-en-numeros</link>
		<comments>http://biestado.kraptor.com/2008/04/03/el-desarrollo-del-kernel-linux-en-numeros#comments</comments>
		<pubDate>Thu, 03 Apr 2008 08:04:09 +0000</pubDate>
		<dc:creator>Kraptor</dc:creator>
				<category><![CDATA[C/C++]]></category>
		<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Tecnología]]></category>

		<guid isPermaLink="false">http://biestado.kraptor.com/2008/04/03/el-desarrollo-del-kernel-linux-en-numeros</guid>
		<description><![CDATA[Acabo de leerme un estudio realizado por Greg Kroah-Hartman, Jonathan Corbet y Amanda McPherson. Podemos ver cómo es el desarrollo del núcleo, la manera en la que se realizan las releases, cómo se distribuye el trabajo entre los participantes y quién está detrás del núcleo. Por supuesto, con unas bonitas gráficas como esta: Es impresionante [...]]]></description>
			<content:encoded><![CDATA[<p>Acabo de <a href="https://www.linux-foundation.org/publications/linuxkerneldevelopment.php"> leerme un estudio </a>realizado por <a href="http://www.kroah.com/">Greg Kroah-Hartman</a>, Jonathan Corbet y Amanda McPherson. Podemos ver cómo es el desarrollo del núcleo, la manera en la que se realizan las <em>releases</em>, cómo se distribuye el trabajo entre los participantes y quién está detrás del núcleo. Por supuesto, con unas bonitas gráficas como esta:</p>
<p align="center"><img src='http://biestado.kraptor.com/wp-content/uploads/files/2008/04/kernel-lines-of-code.gif' alt='Líneas de código frente a días transcurridos en el kernel de linux' /></p>
<p>Es impresionante ver cómo se han doblado la cantidad de líneas de código en 3 años. Un artículo que merece la pena leer.</p>
<p>Vía <a href="http://www.gnome.org/~michael/activity.html#2008-04-02">Michael Meeks</a>, por fin leo algo interesante de él que no sea &#8220;hoy he desayunado y he llevado los críos al colegio&#8221;. ¡Es que hay algunos que lo de bitácora se lo toman de una forma tan literal!</p>
]]></content:encoded>
			<wfw:commentRss>http://biestado.kraptor.com/2008/04/03/el-desarrollo-del-kernel-linux-en-numeros/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>D-Bus causa dolor&#8230;</title>
		<link>http://biestado.kraptor.com/2008/03/26/d-bus-causa-dolor</link>
		<comments>http://biestado.kraptor.com/2008/03/26/d-bus-causa-dolor#comments</comments>
		<pubDate>Wed, 26 Mar 2008 15:18:42 +0000</pubDate>
		<dc:creator>Kraptor</dc:creator>
				<category><![CDATA[C/C++]]></category>
		<category><![CDATA[Curiosidades]]></category>
		<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Pensamientos]]></category>
		<category><![CDATA[Pero qué coj****?!]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Tecnología]]></category>

		<guid isPermaLink="false">http://biestado.kraptor.com/2008/03/26/d-bus-causa-dolor</guid>
		<description><![CDATA[&#8230;o al menos eso dicen la documentación de D-Bus: This manual documents the low-level D-Bus C API. If you use this low-level API directly, you&#8217;re signing up for some pain. Claro, con ese aviso, a uno se le quitan las ganas de seguir leyendo&#8230;]]></description>
			<content:encoded><![CDATA[<p>&#8230;o al menos eso dicen la <a href="http://dbus.freedesktop.org/doc/api/html/index.html">documentación</a> de <a href="http://www.freedesktop.org/wiki/Software/dbus">D-Bus</a>:</p>
<blockquote><p>This manual documents the low-level D-Bus C API. If you use this low-level API directly, you&#8217;re signing up for some pain.</p></blockquote>
<p>Claro, con ese aviso, a uno se le quitan las ganas de seguir leyendo&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://biestado.kraptor.com/2008/03/26/d-bus-causa-dolor/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>C99: Trigrafos y digrafos</title>
		<link>http://biestado.kraptor.com/2008/02/10/c99-trigrafos-y-digrafos</link>
		<comments>http://biestado.kraptor.com/2008/02/10/c99-trigrafos-y-digrafos#comments</comments>
		<pubDate>Sun, 10 Feb 2008 00:56:48 +0000</pubDate>
		<dc:creator>Kraptor</dc:creator>
				<category><![CDATA[C/C++]]></category>
		<category><![CDATA[Curiosidades]]></category>
		<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Pero qué coj****?!]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Tecnología]]></category>

		<guid isPermaLink="false">http://biestado.kraptor.com/2008/02/10/c99-trigrafos-y-digrafos</guid>
		<description><![CDATA[¿Cómo escribirías un &#8220;hello world&#8221; en C? Por ejemplo así: %:include &#60;stdio.h&#62; ??=include &#60;stdlib.h&#62; int main(int argc, char *argv&#60;::&#62;) ??&#60; int i??(:&#62; = {1, 2, 3??&#62;; printf("Hello world\n"); return 0; %&#62; ¿Y si lo compilamos? kraptor@krmobile:~$ gcc -trigraphs trigraph_test.c &#38;&#38; ./a.out Hello world Anda, pues funciona. Es solo una nota curiosa, y no es recomendable [...]]]></description>
			<content:encoded><![CDATA[<p>¿Cómo escribirías un &#8220;hello world&#8221; en C?</p>
<p>Por ejemplo así:</p>
<blockquote>
<pre>
%:include &lt;stdio.h&gt;
??=include &lt;stdlib.h&gt;
int main(int argc, char *argv&lt;::&gt;) ??&lt;
    int i??(:&gt; = {1, 2, 3??&gt;;
    printf("Hello world\n");
    return 0;
%&gt;</pre>
</blockquote>
<p>¿Y si lo compilamos?</p>
<blockquote>
<pre>kraptor@krmobile:~$ gcc -trigraphs trigraph_test.c &amp;&amp; ./a.out
Hello world</pre>
</blockquote>
<p>Anda, pues funciona.</p>
<p>Es solo una nota curiosa, y no es recomendable usar los trigrafos/digrafos del estándar C99. De hecho, para que GCC se los trague, necesitamos utilizar la opción <code>-trigraphs</code>.</p>
<p>Podéis consultar el porqué de los trigrafos (y los digrafos) <a href="http://en.wikipedia.org/wiki/C_trigraph">en el artículo de laWikipedia en inglés.</a></p>
<p>[Visto en <a href="http://eikke.com/funky-c/">el blog de Ikke</a>]</p>
]]></content:encoded>
			<wfw:commentRss>http://biestado.kraptor.com/2008/02/10/c99-trigrafos-y-digrafos/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Nuevo logo de OpenSceneGraph</title>
		<link>http://biestado.kraptor.com/2007/06/15/nuevo-logo-de-openscenegraph</link>
		<comments>http://biestado.kraptor.com/2007/06/15/nuevo-logo-de-openscenegraph#comments</comments>
		<pubDate>Fri, 15 Jun 2007 10:58:16 +0000</pubDate>
		<dc:creator>Kraptor</dc:creator>
				<category><![CDATA[C/C++]]></category>
		<category><![CDATA[Diseño]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Tecnología]]></category>

		<guid isPermaLink="false">http://biestado.kraptor.com/2007/06/15/nuevo-logo-de-openscenegraph</guid>
		<description><![CDATA[Me comenta pplux por Jabber que para la versión 2.0 de OpenSceneGraph (es inminente su salida) han decidido usar como logo un icono del proyecto Tango que retoqué para ellos. Lo mejor de todo esto es que el logo se discutió ayer en la lista y yo ni siquiera lo sabía. El logo de marras: [...]]]></description>
			<content:encoded><![CDATA[<p>Me comenta <a href="http://www.pplux.com">pplux</a> por <a href="http://es.wikipedia.org/wiki/Jabber">Jabber</a>  que para la versión 2.0 de <a href="http://www.openscenegraph.com/">OpenSceneGraph</a> (es inminente su salida) han decidido usar como logo un icono del <a href="http://tango.freedesktop.org/Tango_Desktop_Project">proyecto Tango</a> que retoqué para ellos. Lo mejor de todo esto es que el logo se discutió ayer en la lista y yo ni siquiera lo sabía.</p>
<p>El logo de marras:</p>
<p style="text-align: center"><img src="http://biestado.kraptor.com/wp-content/uploads/files/2007/06/osglogo20.png" alt="Logo de OSG 2.0" /></p>
<p>¡Qué alegría! ¡Gracias por enviarlo a la lista de OSG, Pplux!</p>
<p>De paso, aprovecho para felicitar a <strong>Pplux por la migración de OSG a los servidores de la Universidad Politécnica de Valencia</strong>, aunque teóricamente<a href="http://www.upv.es/noticias-upv/noticia-2345-openscenegraph-es.html"> lo anunciaran como un esfuerzo conjunto entre el AI2 y el ASIC</a>.  Nadie mejor que él para que no montaran una patraña en el <a href="http://www.upv.es/entidades/ASIC/index.html">ASIC</a>. Al rey, lo que es del rey. Y punto en boca, que todos sabemos cómo funcionan las cosas: unos curran, otros se llevan los galardones.</p>
]]></content:encoded>
			<wfw:commentRss>http://biestado.kraptor.com/2007/06/15/nuevo-logo-de-openscenegraph/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>&#8220;Be a pointer, my friend&#8221;</title>
		<link>http://biestado.kraptor.com/2006/11/23/be-a-pointer-my-friend</link>
		<comments>http://biestado.kraptor.com/2006/11/23/be-a-pointer-my-friend#comments</comments>
		<pubDate>Thu, 23 Nov 2006 13:31:50 +0000</pubDate>
		<dc:creator>Kraptor</dc:creator>
				<category><![CDATA[C/C++]]></category>
		<category><![CDATA[Curiosidades]]></category>
		<category><![CDATA[Humor]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Tecnología]]></category>

		<guid isPermaLink="false">http://biestado.kraptor.com/2006/11/23/be-a-pointer-my-friend</guid>
		<description><![CDATA[Versión en C: Empty your memory, with a free()…. like a pointer! If you cast a pointer to a integer, it becomes the integer, if you cast a pointer to a struct, it becomes a struct…. The pointer can crash…, and can Overflow… Be a pointer my friend…. Versión en C++: Empty your mind, be [...]]]></description>
			<content:encoded><![CDATA[<p>Versión en C:</p>
<blockquote><p>Empty your memory,<br />
with a free()….<br />
like a pointer!<br />
If you cast a pointer to a integer,<br />
it becomes the integer,<br />
if you cast a pointer to a struct,<br />
it becomes a struct….<br />
The pointer can crash…,<br />
and can Overflow…<br />
Be a pointer my friend….</p></blockquote>
<p>Versión en C++:</p>
<blockquote><p>Empty your mind,<br />
be formless,<br />
shapeless &#8211; like void*.<br />
If you put an int into a void*,it becomes the int.<br />
You put float into a void* it becomes the float.<br />
You put in a char it becomes the char.<br />
Now, void* can flow or it can overflow.<br />
Be void*, my friend.</p></blockquote>
<p>Y cómo no, una versión para Windows:</p>
<p><object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/-Rc5fKiEKfA"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/-Rc5fKiEKfA" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object></p>
<p>[<a href="http://www.abadiadigital.com/noticia2064.html">Vía La Abadía Digital</a>]</p>
]]></content:encoded>
			<wfw:commentRss>http://biestado.kraptor.com/2006/11/23/be-a-pointer-my-friend/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Más recursos sobre C++</title>
		<link>http://biestado.kraptor.com/2006/09/15/mas-recursos-sobre-c</link>
		<comments>http://biestado.kraptor.com/2006/09/15/mas-recursos-sobre-c#comments</comments>
		<pubDate>Fri, 15 Sep 2006 18:06:40 +0000</pubDate>
		<dc:creator>Kraptor</dc:creator>
				<category><![CDATA[C/C++]]></category>
		<category><![CDATA[Programación]]></category>

		<guid isPermaLink="false">http://biestado.kraptor.com/2006/09/15/mas-recursos-sobre-c</guid>
		<description><![CDATA[He encontrado algunos recursos más sobre C++ que añadir a otros que ya mencioné. C++ FAQ Lite: un completo faq sobre C++. Muy recomendable ver la parte de &#8220;functionoids&#8221;. Hudson Design Patterns: los patrones de diseño clásicos con ejemplos en C++. Espero que sea de utilidad.]]></description>
			<content:encoded><![CDATA[<p>He encontrado algunos recursos más sobre C++ que añadir a <a href="http://biestado.kraptor.com/2006/07/20/lista-de-enlaces-c-y-stl-de-la-mano">otros que ya mencioné</a>.</p>
<ul>
<li><a href="http://www.parashift.com/c++-faq-lite/index.html">C++ FAQ Lite</a>: un completo faq sobre C++. Muy recomendable <a href="http://www.parashift.com/c++-faq-lite/pointers-to-members.html">ver la parte de &#8220;functionoids&#8221;</a>.</li>
<li><a href="http://home.earthlink.net/~huston2/dp/patterns.html">Hudson Design Patterns</a>: los patrones de diseño clásicos con ejemplos en C++.</li>
</ul>
<p>Espero que sea de utilidad.</p>
]]></content:encoded>
			<wfw:commentRss>http://biestado.kraptor.com/2006/09/15/mas-recursos-sobre-c/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

