20080923 martes septiembre 23, 2008

Incongruencias espacio temporales

- o paradojas del offset cero-

Todo programador transcendental se habrá dado cuenta de que los arrays -en cualquier lenguaje que se precie(1)- empiezan por el índice cero, es decir, el primer elemento es el cero, 'osea' Array[0]. Hasta aquí nada que no podamos admitir dogmáticamente con un poco de esfuerzo por nuestra parte. Sin embargo, cuando vemos que el segundo elemento es precisamente el del índice 1, nuestro esquema mental se altera un poquito.

-¿Array[1] es el elemento 2 del Array? ¿¡!? !Qué incongruencia!


Por supuesto que existe la "lógica" explicación en base a la "lógica" de punteros, pero no quiero entrar en temas metafísicos.

Curiosamente hay casos más paradójicos. Resulta que las 00:00:00 horas del martes 23 de septiembre de 2008, se corresponden con la medianoche entre el 23 y el 24, es decir, el segundo siguiente a las 23:59:59 (en un sistema horario con offset cero en el que no existen las 24:00:00). Sin embargo, a las 00:00:01, (sumándole un segundo más), estamos en el primer segundo del martes 23, tras el lunes 22, habiendo realizado un viaje para atrás en el tiempo.

Resumiendo, entre las 00:00:00 y las 00:00:01 de la misma fecha, no ha pasado un segundo, HA PASADO UN DIA ENTERO. Me río yo de los misterios de las teorías de Einstein.

Pues nada, vigilad no programéis un proceso batch para que se inicie nada más cambiar el nuevo día (en el instante 0), y resulta que hasta pasadas 24 horas de lo que preveísteis, no se os a ejecutado..



(1) Todo lenguaje que se precie ha de tener elementos místicos y dogmáticos que nos hagan recordar que dicho lenguaje 'es' el lenguaje de una máquina, usado para comunicarnos con ella, y  no para poder entenderla mejor, para eso ya se inventó el COBOL.

Posted by Feliciano Borrego in Java at 20080923 Comentarios[1]

Comentarios:

Las series del lenguaje RPG empiezan en el 1. ¿Que cosas no?

Enviado por jorge en septiembre 23, 2008 a las 09:51 AM CEST #

Enviar un comentario:
Los comentarios han sido deshabilitados.