Julia

Teniendo ya Mandelbrot, era trivial hacer Julia. Pero para hacerlo más interesante, el programa en ensamblador cambia la constante de Julia por una \Delta, y vuelve a dibujar el fractal. Esto resulta en una “animación” (entre comillas porque mi simulador tarda unos siete segundos en dibujar todo el “monitor”), que me dieron ganas de mostrar en el blog.

Para esto, utilicé la opción que tienen los GdkPixbufs de salvarse a archivos gráficos, y modifiqué el simulador para que lo haga si el usuario lo invoca con un parámetro en la línea de comando. En el camino, arreglé todas las broncas de sincronización que tenía el simulador (el ciclo del simulador es un hilo de ejecución (thread) independiente de gtk_main()), y de una vez limpié todo mi uso de Gdk. Quedó mucho más bonito.

Para generar automáticamente las 325 imágenes de la animación, hice un hack para que el simulador guarde una copia de la imagen cada vez que se ejecuta la instrucción shl (shift left), porque esa instrucción no se usa en el programa de Mandelbrot o Julia. El hack es necesario porque el simulador sólo guarda la imagen cuando entra en un ciclo infinito que no hace nada, que es como “oficialmente” acaban los programas correctos en nuestro micro. El programa de Julia no tiene ciclo infinito que no haga nada; tiene un ciclo infinito que dibuja Julia en cada iteración, y no iba a generar las 325 imágenes a pie.

La animación quedó bonita:

Julia

Julia

Los inges siguen avanzando con el micro. Or so they say.

Imprimir entrada Imprimir entrada

Si X entonces Y, si no Z

Con Alejandro en nuestro proyecto de Arquitectura:

Yo: ¿Entonces VHDL no permite if‘s anidados ni elsif‘s?
Alejandro: No, la bronca es que cuando hacemos

if (pin = ‘0’) then
        do shit
else
        esto no quiere decir que pin es ‘1’, sólo no es ‘0’
end if;

Yo: Y es por eso que no estudié en Ingeniería.

De donde yo vengo, los bits valen cero o uno. Y ya.

Imprimir entrada Imprimir entrada

Fin de semestre

Sólo he escrito entradas de Arquitectura de Computadoras últimamente, porque ha sido mi coco este semestre (no es que sea difícil; no lo es… es sólo que esta materia tiene todos los elementos por los cuales acabé en la Facultad de Ciencias y no en la de Ingeniería). Pero eso no quiere decir que no tenga un fin de semestre completito.

Mañana son las reposiciones de Lenguajes de Programación. La materia ha sido muy frustante, básicamente por el ayudante. Tengo un historial añejo de pelearme con ayudantes. El resultado es que no sé qué he sacado en mis exámenes; sé que no he reprobado ninguno, y que (creo) en ninguno tengo menos de ocho. Pero no sé exactamente qué calificaciones tengo, además de que el antes mencionado ayudante no ha entregado las calificaciones de los últimos dos exámenes que hicimos. Entonces no sé si tengo 10 de calificación… y quiero 10, así que ante la duda (si no nos entregan calificaciones antes), tendré que hacer reposiciones.

El lunes tengo examen de Análisis de Algoritmos. Ha sido sin duda mi mejor materia, incluido un 6 idiota que tuve en un examen, especialmente por la tarea 3, de la cual hablaré (espero) al fin del semestre. El punto es que no me preocupa demasiado el examen; creo que estoy en condiciones suficientemente buenas para pasarlo bien.

El martes es el día que entregamos nuestro micro en Arquitectura de Computadoras. Creo que sí acabamos a tiempo, y creo que va a quedar muy padre ese proyecto. Cómo carajo se va a ver reflejado eso en mi calificación, no tengo idea.

Y por último el miércoles tengo mi último examen de Autómatas y Lenguajes Formales. Exceptuando un 7.2 y un 8.5 en dos de las ocho tareas, tengo 10 o más de 9.5 en todo lo demás (incluido el primer y hasta ahora único examen). Pero este segundo examen es el 40% de la calificación, así que más vale que lo saque bien.

Independientemente de que es fin de semestre completito, el cansancio ya comienza a ser evidente. Es la primera vez que en diciembre no descansé nada (estuve yendo al IIMAS diario o trabajando desde mi casa en cosas de Arquitectura y Algoritmos), y además ya comienzo a hartarme. Pero falta menos de una semana para que este semestre acabe.

Y mañana sale el nuevo capítulo de Battlestar Galactica.

Imprimir entrada Imprimir entrada

Comentarios

En mi correo electrónico de la Facultad de Ciencias (canek@ciencias.unam.mx), parece haber broncas para recibir correos. Como la UNAM está de vacaciones hasta el jueves (al menos), es poco probable que estos problemas sean resueltos pronto.

Esto se traduce en que las notificaciones de nuevos comentarios para moderar no me están llegando, y por lo tanto sus comentarios pueden tardar en aparecer uno o dos días (en general apruebo los comentarios de forma casi inmediata, porque estoy conectado casi todo el día). Si su comentario no aparece de forma rápida, tengan un poco de paciencia por favor.

En ese mismo canal, creo que es bueno que les recuerde que yo modero todos los comentarios que aparecen en mi blog. Inicialmente lo hice por el SPAM, pero ahora lo hago por ciertos comentarios que he recibido. En general, les pido que se abstengan de tratar de publicar los siguientes comentarios:

  • Insultos de cualquier tipo por el sólo hecho de insultar. No es porque sea mojigato y me molesten las groserías: yo digo un chingo de groserías. Es sólo que ciertos niños (y no me cabe la menor duda de que son niños) no sé porqué les parece divertido poner groserías sólo por el hecho de ponerlas.
  • Spoilers. A menos que sea en una entrada que ya tenga una advertencia contra spoilers, se me hace mala onda ponerlos sin darle una advertencia al lector. Además, suelen ser comentarios parecidos a los que hacen los niños que ponen groserías (del tipo “el príncipe mestizo es fulano de tal… ja ja ja”)… lo cual me hace pensar que son los mismos niños.
  • Propuestas de negocios; del estilo de “vendo capítulos de Robotech”. Si quieren lucrar con algo ilegal yo pienso que tienen todo el derecho de intentarlo, e incluso les deseo suerte y ojalá la ley no los agarre. Sólo no lo van a hacer en mi blog.
  • Porras al América, y en general a cualquier equipo que no sean los Pumas. Cada quién tiene todo el derecho de irle al equipo que se le de su regalada gana… pero este es mi blog, y aquí no habrá porras para ningún equipo que no sean los Pumas. Y de hecho, a menos que sea una porra muy original, tampoco creo aprobar ninguna porra a los Pumas.

Si no les importa, por supuesto pueden intentar publicar comentarios como los que les acabo de pedir que no publiquen. Sólo les recuerdo que yo los modero todos, así que no va a aparecer ningún comentario que yo no quiera. Y me quedo con un log de la IP y la hora en que se hicieron los comentarios. De todos los comentarios, aparezcan publicados o no.

Y aprovecho para agradecer a todos los que se toman un poco de su tiempo para leer mi blog y publicar comentarios que aportan algo a las cosas que aquí se discuten. De verdad agradezco todas las contribuciones sinceras.

Imprimir entrada Imprimir entrada

WordPress 2.0

Al final no pude resistirme y cambié a WordPress 2.0.

Exceptuando algunas adecuaciones que tuve que hacerle al filtro de HTML (¿porqué carajo quieren filtarme a mí si quiero usar <div> personalizados?), y cosillas por el estilo, todo quedó como me gusta.

La nueva versión administrativa está muy padre; lamentablemente no está toda en español como a mí me gusta. Pero sólo la veo yo, así que tendrá que esperar a (al menos) que acabe el semestre.

Imprimir entrada Imprimir entrada

WordPress 2.0

Y acabo de hacer otro respaldo de mi blog. Digo “otro”, porque tengo como 20… todos en abulafia.

(Lo cual, siendo estrictos, los descalifica como respaldos; un respaldo por definición es off-site, si no cuando abulafia explote no me sirven de nada).

La razón del respaldo es que acaba de salir WordPress 2.0. Ahora; no hace mucho que configuré mi nuevo tema (con todo en español como a mí me gusta), y que puse cosas como el plugin de LaTeX… no estoy seguro de qué tan bien funcionen todas esas cosas en la versión 2.0, y no estoy de humor (o con tiempo) de arreglarlas si fallan.

Así que probablemente me espere un poco para actualizar; y mientras empiezo a reparar la base de datos, porque acabo de revisar y parece que está combinando UTF-8 e ISO-8859-1… lo cual siempre da broncas.

Imprimir entrada Imprimir entrada

Mandelbrot

Hoy acabé la parte de software para nuestro proyecto de Arquitectura de Computadoras. Por supuesto no va a servir de mucho si los inges no acaban el micro, pero me he divertido al menos.

Nuestro micro es bastante sencillo; tiene instrucciones para manejo de memoria, una pilita (en la misma memoria), saltos, un ALU de enteros, y (el chiste), una unidad aritmética de complejos.

La idea era hacer algo nuevo.

La aplicación obvia para nuestro micro es un fractal; sobre todo porque tenemos salida VGA de nuestra tarjeta Spartan-3E, y entonces (mientras los inges se hacen bolas con el código VHDL), yo hice un ensamblador, un desensamblador, un convertidor de código máquina a VHDL, y un emulador. La idea es tener todo el software depurado para que al momento de correr la aplicación en la tarjeta, si algo sale mal, sepamos que de hecho es el código VHDL y no algún error bobo en el software.

El ensamblador lo hice con Yacc y Lex (y sé que no era necesario; sólo era muy sencillo hacerlo así), el desensamblador en Perl (aunque lo pasé a C porque cómo joden los inges con la eficiencia), el convertidor en C, y el emulador también en C, utilizando Gtk+ para emular el monitor. Ya entrados y en el vicio, hice también el programa en ensamblador que dibujara Mandelbrot en la pantalla.

Para que se den una idea, este es un programa en nuestro ensamblador que dibuja una línea vertical justo al centro del monitor (en VGA tenemos 640×480 de resolución):

1:    start:
2:              mov     0, %ebx
3:              mov     7, %ecx
4:              mov     320, %eax
5:    for:
6:              vput
7:              mov     1, %edx
8:              add     %ebx, %edx
9:              mov     480, %edx
10:             sub     %edx, %ebx
11:             jz      end
12:             jmp     for
13:    end:
14:             jmp     end

Les queda de tarea descifrarlo. Sólo quiero especificar que el ciclo infinito al final es idea de los inges: parece que la idea de que las cosas terminen les molesta.

Tenemos sólo cuatro registros enteros (%eax, %ebx, %ecx y %edx), y cuatro complejos (iguales, pero “c” en lugar de “e”). Cada complejo tiene una parte real y una imaginaria. No pongo el algoritmo de Mandelbrot porque está bastante más largo (108 líneas de ensamblador; pequeño para todo lo que hace), pero sí les pongo que para graficarlo uno calcula

z_{n+1}=z_{n}^{2}+c

donde z_{0}=0+0i, y c recorre un área que será la que cubra la pantalla.

(Realmente no había razón para ponerles la fórmula; pero ya tengo rato buscando un pretexto para utilizar mi \LaTeX renderer).

Mi emulador ya pudo dibujar Mandelbrot, y sin más preámbulo se los presento:

Mandelbrot

Mandelbrot

Si les parece que los colores son demasiado “All the leaves are brown…”, tienen toda la razón. Sólo tenemos 3 bits para representar colores, así que sólo tenemos ocho: negro, azul, verde, rojo, magenta, cyan, amarillo y blanco. Así que la caballada estaba flaca para empezar.

El proyecto está bonito; si lo acabamos lo va a estar más.

Imprimir entrada Imprimir entrada

Valiant

Ayer además de ver En sus zapatos vi Valiant.

Valiant

Valiant

Muy buena película; lástima que sólo esté doblada aquí en México; me hubiera gustado oír a Ewan McGregor, John Cleese y John Hurt.

La historia es un poco simplona, y la animación no es lo mejor que se haya visto; pero se nota que es inglesa, y al final de cuentas es aliados contra nazis, y eso siempre es divertido. Y que los franceses sean ratones es cagadísimo.

Al final de la película, me enteré de que hay una medalla para animales en el Reino Unido. Es la Dickin Medal, y parece que las palomas mensajeras han sido las que más han recibido. Whatever.

Quitando lo maniqueo y propagandístico de la película, está chida.

Imprimir entrada Imprimir entrada

En sus zapatos

Fui a ver En sus zapatos.

In her Shoes

In her Shoes

Todo mundo repita conmigo:

Chick flick!

Yay!

Cameron Diaz y Toni Collete son dos actrices que me gustan mucho. Dicho eso, no sé si vale la pena ir al cine a ver esta película. Tal vez convenga rentar el DVD para las reuniones con las amigas donde nos peinamos y hacemos el pedicure.

(No que yo jamas haya hecho eso).

La película está divertida, bien actuada y contada, y está simpática. También es enormemente cursi, predecible, y llena de lugares comunes de seudo sicología. Y Cameron Diaz se ve obscenamente hermosa. Y Toni Collette tiene que hacer algo con sus dientes. Pronto.

Me gustó mucho el personaje de Mark Feuerstein (básicamente el galán de la película), porque adora la comida. Y por fin una película donde la protagonista baja de peso sin hacer dieta.

Pero no sé… es demasiado femenina hasta para mí.

Imprimir entrada Imprimir entrada

Sway

Fui a ver King Kong con mi primo Aurelio; por razones que no vienen al caso, lo fui a dejar a su casa en el carro de mi madre. De regreso en el radio sólo estaba La Hora Nacional, que como todo mundo sabe es la mayor porquería que existe en radio en México.

Así que puse el reproductor de CDs, y para mi sorpresa me encontré conque mi madre llevaba un disco chingonsísimo de Rosemary Clooney: Greatest Hits. Buen Dios, está fabuloso el disco. La versión en inglés de Quién Sera

Quién será la que me quiera a mí,
quién será, quién será,
quién será la que me dé su amor
quién será, quién será,

Yo no sé si la podré olvidar
Yo no sé, yo no sé,
Yo no sé si volveré a querer,
Yo no sé, yo no sé.

está increíble. Sway se llama en inglés. Altamente recomendable.

When marimba rhythms start to play
Dance with me
Make me sway
Like the lazy ocean hugs the shore
Hold me close
Sway me more

Like a flower bending in the breeze
Bend with me
Sway with ease
When we dance you have a way with me
Stay with me
Sway with me

Other dancers may be on the floor
Dear, but my eyes will see only you
Only you have that magic technique
When we sway I grow weak

I can hear the sound of violins
Long before
It begins
Make me thrill as only you know how
Sway me smooth
Sway me now

Quien sera el que me quiere a mi
Quien sera
Quien sera
Quien sera el que me de su amor
Quien sera
Quien sera

I can hear the sound of violins
Long before
It begins
Make me thrill as only you know how
Sway me smooth
Sway me now

Sway me smooth, Sway me now!

Imprimir entrada Imprimir entrada

King Kong

Fui a ver hoy por fin King Kong. Antes que nada, creo que como los chavos de Penny Arcade bien lo dijeron en una tira, todo mundo sabe de qué trata la película, así que no creo que sea necesaria una advertencia de spoilers.

King Kong

King Kong

La película saca tres ideas básicas en mí:

  1. Pinches viejas.
  2. Todos los hombres somos iguales.
  3. Este tiene que ser el romance más idiota de la historia.

Dicho eso, la película es fabulosa. Véanla. Dos veces.

Visualmente el changote es impresionante, al igual que todas las criaturas que tiene a bien partirles su madre si se meten con él o su reinita. Que hablando de, Naomi Watts se ve bellísima (creo que no había salido tan guapa en otra película), y ciertamente uno entiende la calentura del mono. Adrien Brody para variar me cayó bien en su papel, y Jack Black siempre me ha gustado.

De la historia no hay mucho que decir; creo que se le da un mejor trato a las bestias salvajes y a los nativos que en la película del 33, pero exceptuando eso todo es más o menos igual. Dura mucho (más de tres horas), pero casi no se nota.

Altamente recomendable.

Otra cosa chida de haberla ido a ver, es que vi en el cine el trailer de X-Men 3, que ya había visto y está super chido, pero además pasaron el primer trailer (no teaser) de The Da Vinci Code. Al principio la idea de la película no me emocionaba mucho, porque Tom Hanks no me convence como Robert Langdon (el papel era de Harrison Ford… hace 15 años); pero el cast se ve fabuloso. Sale In Mackellen como Sir Leigh Teabing (en el trailer sólo se oye su voz, pero con eso basta), Audrey Tautou como Sophie Neveu (que ya sabía, pero me encanta), Alfred Molina como el obispo Aringarosa, y (lo mejor de todo), Jean Reno como el capitán Fache.

Super chido el cine hoy. Buenas cosas para el futuro.

Imprimir entrada Imprimir entrada

Del cerro a tamborazos

Hace mes y medio, Miguel de Icaza publicó en su blog una airada entrada contra Fox por el conflicto que surgió entre nuestro tarado presidente y Hugo Chávez.

Miguel me cae bien; y yo lo clasifico (no sé él cómo se clasifique) como de izquierda. Probablemente la realidad sea que esté más cerca de la “izquierda” gringa que de la mexicana, lo cual básicamente lo pone en el centro en el espectro político mexicano, pero sin duda es liberal. Y uso GNOME, claro.

Mi punto es que generalmente estoy de acuerdo con él; en el conflicto de Fox y Chávez también creo que Fox dio pena ajena (lo cual no es raro; en general siempre da pena ajena). Lo que no me gustó de esa entrada, fue el modo en que decidió descalificar a Fox:

Ese es el problema de elegir a alguien que bajaron del cerro a tamborazos.

No me refiero a que el “adjetivo” bajado del cerro a tamborazos sea políticamente incorrecto (yo nunca he sido políticamente correcto); me refiero a que sencillamente es falso.

Hace ocho días, Evo Morales ganó por aplastante mayoría las elecciones para presidente en la hermana república de Bolivia. Evo Morales, literalmente, lo bajaron del cerro a tamborazos. Y los cerros en Bolivia están como dos mil metros más altos que los de México.

Nada de eso impide que sea un legítimo líder de los indígenas de Bolivia, y que durante los últimos cinco años haya dirigido un movimiento de masas que en su punto más alto tomó (pacíficamente) La Paz, y que culmina ahora con una victoria que es una muestra más de qué pendejos están los gringos, y de cómo Latinoamérica se va desplazando hacia la izquierda en el espectro político, hartos los latinoamericanos de los últimos veinticinco años de gobiernos neoliberales (en el mejor de los casos; en el peor de guerras civiles y dictaduras donde los gringos siempre metieron las manos).

Espero que en siete meses ocurra lo mismo en México. Y el Peje no anda tampoco muy lejos de que lo hayan bajado del cerro a tamborazos. Por cierto.

Yo no soy políticamente correcto. Soy indio, y si alguien me dice indio yo contesto “sí, a mucho orgullo”. Si veo un negro probablemente le voy a decir en algún momento “negro”, y aun güero problablemente le diga “güero” (“güerita”, si es reinita). Se me hace idiota que algunos califiquen de políticamente incorrecto decirle a alguien lo que es.

Mi reacción ante el comentario de Miguel no va en el sentido de que Fox no lo hayan bajado del cerro a tamborazos. Por supuesto que lo hicieron. Va en el sentido de que eso no tiene nada que ver con que sea un pendejo.

Imprimir entrada Imprimir entrada

La Piñata

Ayer (y parte de la madrugada de hoy) fue la tradicional posada en casa de Enrique.

Todos los años Enrique y su familia hacen la posada, y todos los años Enrique me invita. Aunque conozco a Enrique desde hace casi 10 años, no he ido a todas las posadas que ha organizado. He ido sólo como a 4 ó 5, pero en general siempre me la he pasado bien.

Ayer estuvo divertido; básicamente estuve pasando el rato con Omar y Paola, hasta que llegó la hora del Orapronobis (whatever that fuckin’ means). La mamá de Enrique todos los años hace que nos salgamos al frío de la noche con nuestras velitas, caminemos diez metros en una dirección, diez metros en la contraria, y pidamos posada. Se da el tradicional intercambio de Oh-oh-os pido posa-ah-ah-da… (aunque casi todos sólo gritamos oh-oh-os y a-ah-ah-da), y entramos como perros gringos.

Es tranquilizante el saber que hay cosas que no cambian en el mundo.

Después de pedir posada, vienen las piñatas. Creo (no estoy seguro) que la idea es que haya una piñata para chavos, una piñata para chavas, y una piñata mixta (supongo que los indecisos van ahí también). El punto es que la primera piñata sólo pasaron hombres, la segunda sólo mujeres, y en la tercera varios.

La primera piñata era de barro, y pasaron varios hombres con distintos grados de habilidad (o falta de) para menear un palote a ciegas. Y de repente Enrique y Sergio me gritaron que me tocaba. No soy muy dado a disfrutar el ridículo, así que en general no me gusta ir a pegarle a la piñata, pero me dije “bueno…” y fui, encargándole mis lentes a Paola. Me vendaron los ojos me dieron un caballito de tequila, y me pusieron un palote en las manos.

La cosa es, el papá de Enrique estaba (como siempre) a cargo del cable que sube o baja la piñata, y el papá de Enrique siempre hace lo mismo: sube mucho la piñata si el stick-bearer parece que está a punto de darle, y la acerca mucho si ocurre lo contrario. Y como que siempre le menea al cable del que cuelga la piñata al mismo ritmo.

Así que me quedé quieto, brinqué, le pegué al aire, me quedé quieto de nuevo, brinqué, rocé la piñata, me quedé quieto de nuevo, brinqué, y rompí la piñata. Cuando sentí a las masas avalanzándose sobre el contenido de la piñata, sólo me quité la venda y me alejé del sitio, como mataor después de dar la estocada fatal al pobre toro.

Hacía años que no rompía una piñata.

Después fue la piñata de las chavas, que era de cartón, y por tanto no quería romperse. Al final una chava estuvo dándole (ya sin venda) de madrazos a la piñata, y ésta sólo se iba deformando más y más; Enrique y Sergio terminaron deshaciéndola con sus manos al final. Paola fue de las chavas que pasó a pegarle, pero toda esperanza de que ella fuera la buena se perdieron cuando Omar y yo le gritamos “¡izquierda!” y Paola se quedó quieta un segundo meditando cuál era la derecha y cuál era la izquierda.

La tercera piñata era de barro, y Omar fue uno de los que intentaron darle. Pero con Omar sí me espanté; de repente (y sin alguna razón aparente) giraba 180°, y empezaba a menear el palo por todos lados. Espantó a varias personas; y sí estuvo a punto de darle a varias de ellas. Yo me la pasé gritándole “¡detente!, ¡detente!”. Omar dejó de intentarlo cuando Enrique le gritó “¡dos pasos a la izquierda, tres para atrás, y pégale!”. Al final Sergio la rompió sin venda, porque ya todos nos estábamos hartando.

Después de eso vino el baile y la comida (Omar, Paola y yo básicamente comimos; muy rico por cierto), y ya después fui a dejarlos a su casa.

Me divertí mucho; rompí una piñata, y saqué de otra un regalito que espero hacer uso de él pronto.

Imprimir entrada Imprimir entrada

Reboot

Hace un par de días, tiré mi celular por tercera vez. Soy muy cuidadoso con este celular, porque me salió muy caro, y porque está bien bonito.

Como sea, hoy en la mañana vi que la alarma no estaba funcionando. Nada más hacía beep y se activaba la pausa inmediatamente. Recordé que cuando se me había caído, la carátula se había levantado un poco; así que pensé que a lo mejor al acomodarla había quedado uno de los botones apretado permanentemente. Le levanté la carátula un poco, la acomodé de nuevo, y probé la alarma. Ahora sólo se prendía la pantalla como cuando suena la alarma, pero no sonaba nada.

Ya espantado, fui por mis poderosas puntas torx y abrí mi celular.

Dos cosas: a) todo se veía bien, y b), no sé nada de celulares.

Me llamé a mí mismo, y con horror vi que tampoco sonaba el timbre del celular. Eso para mí es grave: mi agitada vida social depende en gran medida de mi celular.

Cerré todo (el celular), y volví a llamarme. Y ahora sí pánico: el celular no sólo no sonaba, sino que se apagó. Lo prendí de nuevo, y se apago… de nuevo.

Respiré tres veces, toqué tres veces mis zapatillas diciendo “no hay lugar como el hogar”, y volví a prenderlo. ¡Eureka!, el celular funcionaba perfectamente.

No lo había apagado en semanas. Se me olvidaron las propiedades curativas que puede tener un buen reboot.

Imprimir entrada Imprimir entrada

Lex

Y resulta que tengo que hacer un ensamblador para mi proyecto final de Arquitectura de computadoras. Un ensamblador no es un compilador. Trato de decirle eso a un montón de gente pero no entienden; un ensamblador es (básicamente) un reemplazo textual de instrucciones en ensamblador a lenguaje de máquina. Puede hacerse bonito; pero excepto transformar literales, cuidar que los jumps vayan a etiquetas definidas, y ver que las instrucciones reciban los parámetros que necesitan, no hace nada interesante.

Es tan trivial la tarea, que no sé si hacerla en Java, Perl o C. E independientemente de qué lenguaje utilice, no sé si usar una herramienta ya hecha (como JavaCC o Lex), o hacerlo a pie.

Como sea, si uso Lex (que nunca he usado) necesito saber cómo funciona, así que me puse a leer su página del manual. Es el manual más mamón que he visto:

The lex utility shall generate C programs to be used in lexical processing of character input, and that can be used as an interface to yacc.

(El énfasis es mío.)

¿Shall? ¿En una página del manual?

Chale.

Imprimir entrada Imprimir entrada