Cosas mías

April 30, 2006

E. E. “Doc” Smith: Patrulla Galáctica

Pulp Ediciones, Colección Omean, 2003
84-95741-33-4
Galactic Patrol, traducción de Ramón Goicoechea Luna

Lectura número 0038/2006

Tercer libro de la serie de Los Hombres de la Lente, continuamos con la Patrulla Galáctica y sus superhombres. Ahora se trata de un descendiente directo del Kinnison original, que se va, recién graduado, a probar una nueva nave espacial con un nuevo armamento. En el proceso consigue desvelar el secreto que está haciendo que los boskonios comiencen a tener preponderancia sobre ellos. Durante lo que queda de la primera mitad del libro, Kinnison vuevle a la base central, escapando por los pelos de los piratas boskonios y haciendo nuevos amigos.

Kinnison duda de las propiedades de la Lente, y decide volver a Arisia, en donde, en contra de todo pronóstico, es entrenado y llevado a un estadio superior de control mental. Así preparado consigue descubrir la base central de Boskonia y, junto a la Patrulla, la atacan y vencen.

Lo curioso del libro es que “Doc” inserta una extraña trama amorosa…

Análisis de la serie
Este es el último libro que he podido conseguir de los seis que conforman la serie, pero creo que es suficiente para poder realizar un sencillo análisis.

Pese a ser space opera de casi la Edad de Oro, las obras están bastante bien construidas y balanceadas entre lo que es la aventura y lo que yo llamo “los hechos sociales”; los personajes son más o menos humanos, los efectos siguen a las causas y en general no existe un desentono demasiado abrupto entre los hechos y las personas.

Los años cincuenta fueron una época -científicamente hablando- en la que no se pensaba en los límites de la ciencia, y estas novelas así lo refleja. Los inventos y las máquinas, a cual de ellas más potente e infernal, se suceden en continua sucesión; si el lector piensa que tal invento es el arma definitiva del universo se equivoca de medio a medio: en el próximo capítulo aparecerá otra el doble de poderosa y de destructiva.

La serie es agresiva, demasiado agresiva. En la época del autor se le llamaba guerra, ahora se le llamaría genocidio y delitos contra la humanidad, o mejor dicho, delitos contra el universo. No obstante, pienso que una novela es una novela, y que en ella está permitido todo, siempre que no intente salir a la realidad.

Entretenida, divertida, amena, fácil. Así la catalogaría, aunque el que esto escribe guste de temas algo más profundos, ha sido toda una gozada leer algo tan evasivo y lineal.

April 29, 2006

E. E. “Doc” Smith: Primer Hombre de la Lente (1950)

Pulp Ediciones, Colección Omean, 2002
84-95741-17-2
First Lensman, trad. de Ramón Goicoechea Luna

Lectura número 0037/2006

Este fue el primer libro publicado de la Serie de los Hombres de la Lente, ya que Triplanetaria se editó para completarla y rellenar los huecos que el autor se había dejado en el tintero; en palabras actuales sería una precuela.

Algo más serio y coherente que Triplanetaria, narra la creación de los Hombres de la Lente y la lucha política por conseguir la presidencia de los Estados Unidos por parte del Cuerpo Triplanetario, para así asegurarse la creación de la Patrulla Galáctica.

Aventuras por doquier, armas con poderes indescriptibles, violación más evidente de las leyes de la física, malos muy malos y buenos muy buenos, chica lista pero frágil incluída, luchas políticas, fintas e infiltraciones, inconsistencias argumentales, todo, abosolutamente todo lo que caracteriza a una gran novela de space opera está contenido en este libro.

La inconsistencia más flagrante es evidente por sí misma. Virgil Samms es el Primer Hombre de la Lente, y debe ser resguardado a toda costa, lo que significa que escape por los pelos de un atentado y sea recluido en el lugra más seguro de todos los posibles. Pero en el capítulo siguiente, como quien no quiere la cosa, se infiltra en una banda de malos malosos para poder descubrir pruebas… ¿En qué quedamos?

Por otro lado, todo un clásico de aventuras, demasiado clásico ya a mi parecer.

April 28, 2006

Esos maravillosos eventos

Filed under: Programación

Estoy haciendo una aplicación en C++/CLI a ratos, y ahora estaba construyendo un registro para guardar los eventos de la misma, al más puro estilo del Event Viewer de Windows. Podría utilizar ese mismo registro (con el .NET es una tarea trivial enviar mensajes al registro de eventos), pero como me gusta hacer los programas lo menos intrusivos posible, he decidido construirme uno propio.

La visión más orientada a objetos que se me ha ocurrido ha sido la de tener una clase llamada Log y encapsular ahí dentro todo el contenido. Dicha clase contiene una ventana en la que se va mostrando el registro en tiempo real si el usuario así lo quiere. La filosofía .NET requiere que los forms estén en sus propios ficheros fuente, de forma que si empezamos a añadir clases y otros elementos políticamente incorrectos lo más seguro es que terminemos con la caída del diseñador visual o incluso del entorno completo, así que decidí poner por un lado la ventana y todo su manejo y por otro la definición e implementación de la clase de registro.

Podría haberlo contenido todo dentro de la clase que define la ventana, pero aparte de que me parece algo sucio, si el usuario nunca muestra la ventana de registro, está gastando inútilmente una serie de recursos que muy bien se podrían ahorrar… aunque dada la voracidad del .NET no creo que se notara mucho.

Resumiendo: tengo una clase que es una ventana y otra que es un sistema de registro y que ha de controlar dicha ventana mediante una relación de contención (o sea: la clase registro contiene a la clase de la ventana).

Como la ventana ha de ser no modal, surge un problema: si el usuario cierra la ventana, o pulsa algún botón en ella, ¿cómo se lo comunico a la clase registro?

Una solución rápida (y que en su momento usé con el C++ Builder), es la de pasar un puntero (estoooo… una referencia) de la clase registro a la clase ventana. Pues no, el entorno me dice que es una referencia circular y eso no está permitido en C++, porque en C# sí que lo está. Un motivo como este determina que el C++/CLI sea un lenguaje para hombres. Ojo, no lo critico, porque realmente tener referencias circulares es una mala cosa, pero en otros lenguajes .NET sí que se permiten.

En fin, que el método clásico no funciona, y el de la relación padre/hijo tampoco, puesto que el padre no es una ficha, sino una clase normal y corriente (manejada pero normal y corriente pese a ello).

Bueno, cuando la inventiva de uno llega a su límite, decide recurrir a los Padres de la Patria y saca su flamante Petzold C# de la estantería y lo consulta. Tras leerse como cien páginas de aquí y de allá, recibe la inspiración charlésica: “-Joder, los eventos. M…. Así que para eso son los eventos…¡Claro, los closures del C++ Builder!”

En fin, que hay días…

Bueno, pues efectivamente, los eventos sirven, entre otras cosas, para eso, y son una forma elegante de solucionar el problema. El asunto es muy fácil.

  • Definimos un método en la clase controladora que implemente como parámetros una referencia a un objeto y otra a un EventArgs de la siguiente forma:
      void NombreMetodo(Object ^sender,EventArgs ^e)
  • Después de instanciar la clase contenida (que será una ficha), asociamos nuestro método al evento que queramos de la misma:
      claseHija->Evento+=gcnew EventHandler(this,NombreMetodo)
  • Y se acabó, cada vez que en la clase contenida se produzca el citado evento, nuestro método será llamado en correspondencia. Y lo curioso del tema no es que esto se pueda realizar en una relación de contención o de herencia, sino que puede ser enteramente global incluso entre ensamblados, por eso tenemos que pasar al EventHandler una referencia a la clase que contiene el método que se va a registrar. Pero aún hay más, porque el disparo de eventos no está limitado a controles o ventanas, sino que cualquier clase puede producir y consumir eventos. Quizás más adelante me hagan falta y lo explique aquí.

    No obstante todo esto tan bonito, me surge la duda de la sobrecarga de código que pudiera llevar. Una closure en el C++ Builder no era más que un puntero doble: el primero almacenaba la dirección base del objeto, el segundo el offset del método, y a la hora de la ejecución, tan sólo había que calcular la dirección base más offset antes de lanzar el método (por cuestiones del contexto del objeto sobre el cual se iba a ejecutar el método). En el mundo .NET todas estas cosas están basadas en colecciones (un evento puede almacenar un número indeterminado de métodos a lanzar) y quizás no sea tan limpio ni óptimo como se deseara… Quizás algún día lo investigue.

    April 27, 2006

    Kevin O’Donnel: ORA:CLE (1983)

    Ultramar Grandes Éxitos, 1987
    84-7386-462-X
    Traducción de Domingo Santos

    Lectura número 0035/2006

    Me gustó mucho más Efímeras, pero esta tampoco está mal. Pese a tener más veinte años de antigüedad, no ha perdido un ápice en cuanto al tema de la informática, que continúa siendo perfectamente válido y, por desgracia, posible en un futuro no muy lejano.Un libro que todo aficionado debería leer.

    Philip José Farmer: El Mundo del Río y otras historias (1979)

    Ultramar, Grandes éxitos de bolsillo, 1984
    84-7386-353-4
    Riverworld and other stories, trad. Víctor Conill

    Lectura número 0034/2006

    Libro enteramente prescindible si no fuera por el relato La patrulla del amanecer de Henry Killer, una delicia escatológica, humorística a ratos, original y malsonante, escrita por Farmer para el Playboy. ¿Qué ocurre en un asilo de ancianos cuando se apaga la luz? ¿Qué relación tienen los ases de la aviación de la Segunda Guerra Mundial, las incursiones de combate y los asaltos por sorpresa con un geriátrico? Un relato que nos demuestra que nuestros ancianos no son seres inútiles y desechos, sino todo lo contrario…

    El primer relato sería un bodrio si no fuera porque relata, dentro del universo del Mundo del Río, cómo Tom Mix conoció a Jesucristo resucitado de verdad; por lo demás, la historia de una huída, una invasión y poco más. Recordemos que esta historia aparece de pasada en una de las novelas de la serie, relatada por el propio Tom cuando está con el grupo de Sam Clemens.

    En fin, otros relatos, a cual de ellos peor, en escala descendente; quizás se salven un poco por el tono general un tanto verde, algo escatológico, pero desde luego nada revolucionario ni pornográfico en la actualidad.

    De entre todo el bodrio podríamos destacar, sin por ello convertirlo en un buen cuento, a El enigma del puente doliente… entre otros, en el que Farmer hace un guiño a Conan Doyle, adelantándose a su Sherlock Holmes y resolviendo de una tacada tres de los casos que el insigne investigador no pudo…

    April 23, 2006

    Jules Verne: Bolsas de Viaje (1903)

    Filed under: Lecturas, Verne, Jules

    RBA Coleccionables, 2003
    84-473-3103-2
    Bourses de voyage, trad. de E.M.A.

    Lectura número 0033/2006

    Esta novela ha aparecido en España con al menos tres títulos diferentes, el primero de ellos, Los piratas del Halifax es quizás el peor de todos ellos, puesto que no da idea del contenido de la misma. Aparte del de Bolsas de viaje, también se le ha puesto el de Beca de viaje, más disculpable por ser también bastante fiel y mejor castellanizado que el original, puesto que lo que al parecer en francés es, aparte de otras cosas, una bolsa, en castellano es una beca.

    Dos son las ediciones de que disponemos, ambas procedentes al parecer de la misma traducción original, aunque la aquí indicada parece haber sido corregida en pequeños detalles y erratas. La otra edición se corresponde al número 26 de “Textos Íntegros” de la Editorial Molino, de lomo cuadrado y de color amarillo.

    En cuanto a la obra en sí, decir que se trata de una novela menor, menor en cuanto a contenido aventurero y menor también en lo relativo a las típicas descripciones y hechos históricos en ella relatados; quizás se deba al ocaso del escritor (podría haber sido escrita alrededor de 1900, cinco años antes de su muerte), de la carencia de datos fiables sobre las Pequeñas Antillas (¿por qué entonces no hizo el viaje a otro lugar?), o simplemente debido al no ya tan tremendo ritmo de publicación que debía de llevar. Débase a lo que se deba, lo cierto es que la novela es muy pobre… en todo menos en tensión argumental, en lo que podría ser una de las mejores.

    Algo lenta, aburrida a veces –pero no por las descripciones, sino porque no ocurre casi nada en ella-, el libro se deja leer siempre que te guste el autor y, ya lo hemos dicho, el lector está en todo momento expectante a ver qué va a pasar con la marinería del barco… el final me parece un poco pobre pero suficiente.

    Un colegio de chicos procedentes de las Antillas realiza un sorteo anual gracias a las becas que una rica hacendada de La Barbada patrocina, un viaje de 10 alumnos más un cuidador a un lugar previamente designado pero secreto para los alumnos.

    El destino de este año es un recorrido por las islas de las cuales son originarios los chicos premiados, puesto que es muy posible que ya no vuelvan a verlas (normalmente, a ese colegio van ricos hacendados retirados que viven en Europa). Los chicos viajan de Londres a Cork, donde los espera un clipper fletado ex-profeso para ellos.

    Justo antes de que los chicos lleguen, el barco es tomado por un grupo de piratas y la tripulación muerta y sustituida por ellos. No se trata más que de huir con el barco y volver a dedicarse a la piratería en el Pacífico, pero la ausencia de viento para salir del puerto les hace que tengan que esperar a los becados, que embarcan. La nueva idea de los piratas es, cuando estén en alta mar, deshacerse de sus pasajeros.

    Tras una intrépida salida del puerto, los marineros se enteran de que al finalizar el viaje los chicos recibirán una prima de setecientas libras cada uno, lo que les hace cambiar de planes. Ahora esperarán a que termine el crucero y se harán con el dinero en el viaje de vuelta.

    El centro de la novela es el viaje en sí, en el que no ocurren apenas incidencias, pero el lector está a la que salta cada vez que llegan a cada una de las diez islas que visitan. Dichas islas, situadas en las Pequeñas Antillas, casi no aparecen en el mapa de lo pequeñas e insignificantes que son, de ahí la ausencia casi de hechos históricos en el libro.

    Tras visitar a la patrocinadora e iniciar el viaje de regreso, uno de los pasajeros (el hijo de una criada de la señora que embarca en Barbada para ir a Londres), descubre por milagro la trama de los marineros y deciden huir en una de las barcas… pero no lo consiguen y regresando al barco se hacen con los piratas, que encierran. En el viaje de vuelta a la isla más cercana para entregarlos, un incendio provocado por los malos hunde el barco y éstos perecen, pero nuestros amigos se embarcan en la citada barca y tras algunas penurias son rescatados por un vapor.

    April 22, 2006

    El Vizconde de Bragelonne (1847-1850)

    Filed under: Lecturas, Literatura

    Círculo de Lectores, 2003
    84-672-0374-9 (obra completa)
    Traducción de Jaume Bernat
    Ilustraciones de J. Désandré y A. de Neuville

    Lectura número 0032/2006

    Todavía no he terminado la obra, pero pongo este comentario ya porque no sé realmente cuando lo haré, dada la magnitud de la misma (más de 1.600 páginas en formato casi folio) y el hecho de que se me está atragantando un tanto… por lo lenta y carente de aventuras, pero como es una segunda lectura puedo escribir esto.

    Dada su magnitud, la novela ha sido dividida normalmente en varios volúmentes, de los que me quedo la división en cuatro partes, que es más natural que las otras. En los enlaces de abajo podrá el lector ver dicha división.

    Comienza bien, tiene un centro horrosamente lento en el que apenas aparecen los mosqueteros y un final más o menos interesante. El problema es que el centro cubre casi toda la novela. Imagino que a los lectores de la época les entusiasmaría ver cómo vivía el Rey Sol y su corte, pero lo cierto es que hoy en día aburre un tanto. En fin, considero que es una obra demasiado larga, demasiado pesada, pero sobre todo demasiado lenta. Parafraseando a mi amigo Ignacio en es.rec.ficcion.misc, diré que es excesivo tardar noventa páginas en narrar la búsqueda de una escalera para que el rey suba a tirarse a una cortesana.

    Para aquellos que quieran más referencias, tenemos la entrada de la wikipedia en inglés, la misma en castellano y un resumen de la novela dividido por partes, así como la propia novela en capítulos, eso sí, en inglés todo ello.

    Benito Pérez Galdós: La desheredada (1881)

    Santillana Ediciones Generales, 2003
    84-03-09479-5
    Del Fondo Editorial Aguilar, Obras completas de Benito Pérez Galdós, Vol. III, pp. 7-206

    Lectura número 0031/2006

    Novela naturalista, dice de ella Sainz de Heredia: “En La desheredada el argumento se reduce a casi nada. Isidora Rufete se cree hija de Virginia de Aransis y pretende que su estado civil sea reconocido y con él se le entreguen las propiedades del marquesado de Aransis. ¿Qué novela idealista podría ser sintetizada en tres líneas, como la anterior? Y, sin embargo, el estudio de los estragos del orgullo, aguijoneado por la miseria y las sugestiones de una fantasía exaltada, hacen de esta novela galdosiana una admirable sucesión de escenas impresionantes que el lector más frívolo difícilmente olvidará nunca.”
    Más adelante, nos dice que “cuanto pasa en La desheredada pasa todos los días en cien mil sitios a la vez. […] Los escenarios son los mismísimos arrabales madrileños […], con su pueblo auténtico, lleno de andrajos, codeado con la miseria, compuesto híbrido de personajes dignos de estudio y lástima.” continúa diciéndonos que es la primera vez que esos tipos de personajes aparecen en una novela, y que causaron sensación en cuanto salió.
    Añade que se trata de la primera novela de la etapa de novelas contemporáneas del autor y algunos detalles más que no vienen al caso.

    Realmente poco puedo añadir yo, si no es que se trata de la historia de una mujer que por su afán de gloria y dineros decide recorrer por todo tipo de amantes, desde el rico y poderoso hasta el chulo de la más baja estofa, terminando, sin decirlo claramente el autor, dedicada a la prostitución más vil y baja de todas.

    Vamos, como la vida misma.

    April 16, 2006

    Espacio de nombres DRA en Windows Mobile

    Filed under: Programación

    El otro día, y sin ningún motivo en especial, me decidí a crear un proyecto nativo para Windows Mobile 5 y Windows Pocket PC 2003 en modo combinado (esto es, un solo código fuente sirve para las dos plataformas, y el Visual Studio se encarga de generar las diferentes compilaciones automáticamente). Tras finalizar el asistente, le eché un vistazo al código generado.

    Mucha compilación condicional, muchos condicionales y el siguiente bloque de código dentro del mensaje de ventana del cuadro de diálogo “About”:

    #ifdef _DEVICE_RESOLUTION_AWARE
    case WM_SIZE:
    {
    DRA::RelayoutDialog(g_hInst, hDlg, DRA::GetDisplayMode() != DRA::Portrait ? MAKEINTRESOURCE(IDD_ABOUTBOX_WIDE) : MAKEINTRESOURCE(IDD_ABOUTBOX));
    }
    break;
    #endif

    Un poco perplejo, descubrí que DRA es un espacio de nombres y que no aparece en la documentación de ningún SDK disponible… Tras la pregunta adecuada en el foro adecuado, obtuve la respuesta: en el artículo What’s New in Visual Studio 2005 for Native Developers se explica por encima el asunto. Al parecer hay un fichero cabecera nuevo llamado DeviceResolutionAware.h en el que se encuentra el citado código. En el propio artículo se explica por encima de lo que se dispone, y lo que falta se puede obtener fácilmente echándole un vistazo al propio fichero cabecera, aunque ciertas partes de código que en él aparecen son un tanto peculiares, por no emplear otra palabra más fuerte… Como todo el código del WM5 sea así vamos arreglados en cuanto a optimización y similares.

    Asimov Ciencia Ficción: Número 6

    Ediciones Robel, Marzo 2004
    84-96232-13-1

    Lectura número 0030/2006

    Hablemos de alienígenas (Domingo Santos): ¿Por qué los alienígenas según la ciencia ficción son casi siempre antropocéntricos?

    El perro dijo guau-guau (Michael Swanwick): Novela del oeste en clave de ciencia ficción, con la inversión de que los animales son personas y las personas son las mascotas. Aunque tiene el premio Hugo 2002 a mi me parece deleznable y sin aportar nada nuevo.

    Atraviesa el desierto (Rodolfo Martínez): El último hombre en el mundo, las máquinas programadas y la incapacidad de estas para variar…

    Oráculos (Robert Reed): Nos podemos comunicar con los alienígenas, pero no alcanzarlos (ni ellos a nosotros), por lo que todo es a través de mensajes. No está mal.

    Voces ancestrales (Robert Silverberg): Nos recomienda un libro que habla de la Edad de Oro de la ciencia ficción y de antes…

    Giza (Joe Haldeman): Al estilo de un “manuscrito póstumo”, la desaparición de la raza humana a causa de haber creado otra raza destinada a vivir en el espacio…

    Sangre caliente (Brian Stableford): Curioso relato sobre el contrabando… de sangre y cómo un pobre granjero (de sangre de cerdo modificada) llega a hacerse rico. Original.

    El libro, el cómic y el DVD

    La piel del camaleón (Domingo Santos): Con mucho el mejor relato de todos los que he podido leer en todos los números de la revista. El contacto con una raza alienígena, nuestro egocentrismo, la cuadriculada mente de los militares y unos extraterrestres a los cuales tan sólo les interesamos como conocimiento abstracto, y desde luego nuestras motivaciones y preocupaciones no son, precisamente, no ya de su interés, sino ni siquiera evaluables.
    Toda una gozada de relato. Al principio pensé no leerlo –“Joder Domingo Santos publicando a Domingo Santos, el summum del nepotismo”-; menos mal que al final la leí, si no me hubiera perdido un bello relato.

    Get free blog up and running in minutes with Blogsome
    Theme designed by Gary Rogers