Habi Hablóg
Declaro:
XML válidoXHTML válido800x600 +
RSS válidoCSS válidoNavegador digno
  Blog   Archivo   Contacto   Administración  

Acerca de

Matemático, informático, aficionado a la electrónica, friki... y otras cosas que no vienen a cuento ni pasan los filtros de palabras.

¿Queríais un blog? Ahí va.

Red antisocial

¡Me van a volver loca! 2.0
La Fragata Portuguesa

Z
¡Me van a volver loca!

Últimos posts

El expediente X que nadie pidió
eNigma
La cuadratura del píxel
Portando desde Spectrum
Inexorable

Últimos comentarios

Habi
NoSupoResolverLaFuncion
Edu
Habi
EnriqueGG

Calendario

No hay fechas.

Categorías

Chorradas
Paranoias
Posts lúcidos
Tecnoesoterismo
Yuyus

Cenas de Abj

Abj debe 7 cenas.

Frase célebre

Habisoft dice: una vez se es matemático, sólo se puede dejar de serlo muriendo

Tas podrío

Habi - 20/09/2006 17:57:00 - Chorradas

Blog.Worm

0


Pretérito

Habi - 19/09/2006 13:43:00 - Yuyus

Invoqué a las 721 de los 80, y todas ellas vinieron a mí; y sus voces ajadas me devolvieron a mi infancia.

Libro de escolaridad. Todo encaja.

Imágenes yuxtapuestas de estados mentales en olvido.

Sólo P pudo devolverme al presente, con sus consejos sabios y necios a partes iguales (y por ello, efectivos).

Ahora se lo que he perdido y lo que he ganado.

0


Cambios, cambios, cambios...

Habi - 17/09/2006 23:40:00 - Tecnoesoterismo

...Y otra versión del blog.

La mayor parte de los cambios son en la interfaz de administración, y en la BBDD. Aunque algunos se ven por fuera, como la desaparición del "Acerca de", renombrado de cosas, sección nueva en obras, etc.

En honor al editor de texto para descargas:

0


¡Lo veo! ¡Es verde!

Habi - 16/09/2006 0:57:00 - Tecnoesoterismo

El post prometido (a mi mismo, no creo que le interese a nadie por su ininteligibilidad).

Meditando sobre la etapa de preprocesado de un compilador, tuve una revelación. ¿Y si el lenguaje del preprocesador fuese EL MISMO que el lenguaje preprocesado en si mismo? Sería como el caso de tener JScript en ASP generando JScript para HTML.

Pero seguía estando el tema del mezclado de ambos en el mismo fichero… y se encendió otra bombillita: hace tiempo pensé en poner las directivas personalizadas para cada función en el lenguaje, a modo de “etiquetas”. Podemos poner una para la ejecución en tiempo de compilado.

Juntando eso con la notación funcional – matemática, con la gramática extendida para tener operadores definibles (y su analizador híbrido), con el lenguaje que hice funcional imitando a imperativo y cuatro cosas más, la revelación ha sido completa.

Hasta he pensado el tema de interfaz con (linkado contra) otros lenguajes, y su extensión de clases (pues tiene tipos simples correspondientes al hardware que subyace), con herencia simple e interfaces, y la sintaxis de todo.

Todo encaja. Tengo el lenguaje que buscaba. Que pena tener tan poco tiempo.

0


No me comes ná

Habi - 14/09/2006 16:12:00 - Paranoias

Modelos de restauración de cara al usuario.

Empezaré definiendo el modelo tradicional en todos sus pasos, y lo usaré como referencia; sus pasos son:

1) Sentarse.
2) Pedir la comida.
3) Esperar que la traigan.
4) Comer.
5) Pagar por la comida (y/o servicio si procede).

También definiré la relación "ser equivalente" entre dos modelos A y B como tener los pasos en el mismo orden (aunque puedan faltar algunos o tener alguno intermedio). Lo importante es que se conserve el orden, es decir, los predecesores de un paso en un modelo no pueden ser sucesores en el otro. Contamos además con las restricciónes semánticas de que 2 siempre irá delante de 3 y 4, y 3 lo hará de 4 (si es que existen). Tampoco pueden faltar los pasos 2, 4, ni el 5 (desgraciadamente).

Este modelo tradicional lo cumple, digamos, Casa Pepe.

Hay sutiles variaciones de esto, como un bar de sushi. En él, realmente no hace falta pedir la comida, sino seleccionarla de entre la que va pasando (pero sigue siendo el paso 2); además se ahorra el cliente el paso 3.

Ahora toca el modelo Rodilla. Aquí el orden es 2, 3, 5, 1 y 4. No pagas al final, sino cuando te dan tu comida. Sigue siendo lógico.

Este modelo Rodilla lo cumple, digamos, la Pastelería Miguelita (pensabais que diría Rodilla, eeeehh xD), aunque se salte el paso 1.

Una variación de esto es el autoservicio. Se salta el paso 3 porque ya está hecha, y el 2 es cogerla (o escogerla) uno mismo, pero el orden es el mismo.

Veamos el modelo de buffet libre. Pagas una tarifa plana por entrar, y una vez dentro te sirves lo que quieras y cuanto quieras. Después del paso 5, en este modelo pasa como el bar de sushi; el paso 2 se reduce a seleccionarla y el 3 desaparece. Después vendría el 1 y el 4. Tiene la ventaja de que 2 - 1 - 4 se pueden repetir. Pagas realmente por entrar, no por la comida, sigue siendo lógico.

Este modelo buffet libre lo cumple, digamos, el Restaurante (de carretera, y puticlub de 23:00 a 07:00) Manoli.

El último modelo a considerar sería el de la hamburguesería. El orden aquí es 2, 5, 3, 1 (llevando la comida uno mismo, como el buffet libre), 4. Pagas por algo que tienes que esperar a que te hagan, y mientras esperas de pie por segunda vez.

Este modelo hamburguesería lo cumple, digamos, el Kentucky Fried Chicken.

De cara al usuario, lo más cómodo es que el paso 1 sea cuanto antes, y si es posible que no haya paso 3.

Por lo tanto, el peor parado es el Kentucky; ¿Quién daría mejor servicio, Casa Pepe, Restaurante (y puticlub a tiempo parcial) Manoli o la Pastelería Miguelita?


¿A qué viene este post? Ni idea. Iba hacer uno sobre gramática de lenguajes con mi última paranoia, pero me ha salido esto del alma y tenía que decirlo.

3


Sympathy for the devil

Habi - 11/09/2006 16:26:00 - Paranoias

Increíble.

Resulta que, según esto, soy un satanista o_O.

http://www.personal.able.es/cm.perez/satan.htm

0


Ábrete sésamo

Habi - 10/09/2006 20:40:00 - Tecnoesoterismo

A ver, algo que me han pedido. Vamos a ver como piratear un programa. En este caso se trata del Cube Media Player, v2.05.0117.

Echando un vistazo por encima con un editor hexa (uso UltraEdit32, que vale para todo) vemos que es un exe sin empaquetar ni proteger. Perfecto, derechito al IDA Pro.

Se tira su ratito pensando y lo analiza bien. Veamos las cadenas... en 004725E8 hay una cadena "Software\CubeMediaPlayer", típica de acceso a registro. Pinchamos, le damos a la X (referencias cruzadas) y vemos que se le llama desde tres procedimientos, igual que las cadenas "User Name" y "Register Code" que están por encima. Sospechoso.

El primer procedimiento se dedica a leer del registro y guardarlo en un buffer. No es gran cosa. El último hace lo contrario, lo devuelve al registro junto con las preferencias del usuario. Tampoco gran cosa. Ahí identificamos el nombre y la clave (en 0047C760 y 0195FE30 respectivamente).

El del medio (de los chichos) es distinto. Hace un montón de cuentas y al final entra en un bucle de comprobaciones, y sale o bien con un 0 o con un 1 (caso bueno) en EAX. *MUY SOSPECHOSO*. Para hacer la prueba, relleno desde 0040CD9E hasta 0040CDA5 con 0x90 (NOPs). Bingo, está registrado.

Hmmmm quizás haya sido un mal ejemplo, ha sido muy sencillo. :/

Nota: Todo son direcciones de memoria, no offsets de fichero (obviamente). Lo digo porque alguien es muy brutito... cheeky

0


Pascual

Habi - 08/09/2006 19:19:00 - Tecnoesoterismo

Llevo mucho tiempo sin visitas, como al principio... mola escribir cosas así, porque puedes escribir de lo que quieras sin pensar en nadie.

Centrémonos. Todavía recuerdo cuando aprendí Pascal en un PCW. Es un lenguaje que siempre me gustó. Sistema de tipos estricto, sintaxis limpia.

Así pues, hoy en día mi lenguaje por definición es el Delphi, que es un dialecto muy ampliado de Pascal con clases, esteroides y un IDE digno.

Viendo lo que ha sacado Borland (o DevCo, o como coño vaya a llamarse ahora esa parte de Borland), en TurboExplorer, me ha dado un yuyu. Y ese yuyu me ha hecho bajarme... ¡el Lazarus!.

¿Qué decir? Con la edad me he amariconado. En los tiempos del DOS habría vendido mi alma al diablo por un IDE así, pero teniendo el BDS 2006 sólo he podido pensar tres palabras: juguete, incómodo, feo. Bueno, también he pensado "palaustre" y "prukogi", pero no tienen nada que ver con esto (creo).

Es aparentemente como un Delphi 5 cutrosillo, y con menos controles. Se hechan de menos a los poderosos Indy. Ya lo probaré a fondo y os comentaré, pero de momento he decidido compilar la ventana por defecto, según se abre: ¡6 MB y pico! Aunque después del susto he visto que la mayoría era información de depuración, y pasando un strip se queda en mega y medio (aún así más que el Delphi 2006, con el último VCL). ¿Qué pasó con el SmartLink ese?

Pero soy raro, y hasta un poco masoca, así que voy a dedicarle algún tiempo. Tengo que probar las extensiones al lenguaje del FPC, ese modo OBJFPC de moda.

2


Chunta chunta

Habi - 06/09/2006 13:32:00 - Yuyus

 

 

Presupuestos listos: 3 de 7.

Y 7 limones y medio limón.

Anubis ampliado.

Todos sabemos que los palaustres quieren estar juntos.

Obras sacadas: 2 de 7.

Tirititú tata-tá tirititú...

Filtro de Spam implementado.

...when love and death embrace.

¡Curro! ¡Curro! ¡Curro!
¡Obra! ¡Obra! ¡Obra! - ¡Obraaaaaaaaa!

Abriré las aguas y todos pasarán.
Cerraré las aguas y los infieles morirán.

(Me gusta este curro frown

(Y sí, conector arreglado)

0


Navegando

Habi - 03/09/2006 22:17:00 - Tecnoesoterismo

Ya no hace falta ir a "Archivo" para mirar los posts antiguos (y encima uno a uno); acabo de ponerle unas opciones de navegación al final de la página para ir de 10 en 10 adelante y atrás, además de ir al principio y fin.

No, no ha sido nada trivial, y menos porque el mandato LIMIT para SQL no es estándar, y ni Access ni SQL Server lo admiten.

Si es que os quejáis de vicio...

0


Reglas del 10:
10 últimos   10 después   10 antes   10 primeros