Pues no debe ser tanta broma a judgar por la repercusión que han tenido. En realidad la sintaxis puede ser muy legible, tanto como cualquier lenguaje de alto nivel, y sobre todo en C++. Siempre que se programa a bajo nivel, en el lenguaje que sea, el código se vuelve mas ilegible y al delphi también le pasa. Y ¿que me dicen del asm?. Cada lenguaje tiene su lugar.
Sí, tienes razón en que en C también se puede hacer código perfectamente legible. Eso depende del programador. El problema no es que tu escribas o no escribas código legible, el problema es que un mal programador puede escribir cuatro simples líneas en C que te tengan mareado durante horas (y encima ese personaje se creerá muy listo por haber logrado condensar así su código).
Por eso me gusta tanto el Pascal (y todos sus derivados), no solo porqué sea más sencillo entender tu propio código, sino porqué es inmediato comprender el código de los demás.
Ni el peor programador del mundo podría escribir nunca un código en Pascal tan imposible de rastrear como un mal código C.
Personalmente, aunque me gusta delphi, prefiero el C y para mí es mas sencillo usarlo a bajo nivel, lo veo todo mas claro. Debe ser que mi nivel de ofuscación es muy alto y me permite sincronizar... (es broma, Marc)
No sé si estar de acuerdo contigo con esto.
Aunque Delphi (o Pascal) es más parecido al lenguaje natural, y al lenguaje pseudo-código, no creo que ello signifique que sea un lenguaje de más alto nivel que C. Creo que a nivel de complejidad, C y Pascal son lenguas del mismo nivel, y el código ensamblador resultante es también de la misma complejidad.
Aunque realmente hablo por ejemplos que recuerdo de traslación de Pascal a ensamblador de cuando estudiaba en la Universidad (hace varios siglos, parece). Pero como en la programación que he hecho en el mundo real nunca me he preocupado del código máquina resultante, puesto que siempre he obtenido un rendimiento aceptable, entonces no puedo hablar por experiencia propia.
Pero hasta donde tengo entendido y hasta donde vi cuando me preocupaban estos temas, a pesar de ser más inmediato de leer el código Pascal es del mismo nivel que el código C y obtienen un ensamblador de la misma calidad y rendimiento.
NOTA: A menos que te pongas a hacer perrerías en el código, cosa que en Pascal no se puede hacer, pero que el C parece que te invite a ello. Me refiero a acceder directamente a la memoria obviando los tipos declarados de los datos a los que accedes, o modificar directamente la pila de ejecución, etc. ... Naturalmente con estas prácticas tan dudosas puedes disparar el rendimiento de tu aplicación, pero me pregunto cuantas veces está esto justificado (puesto que en estos casos es evidente que la legibilidad del código se va a la porra, y más te vale documentar bien las trastadas que haces, puesto que seguirlo por el código fuente se convierte en una odisea digna de un héroe homérico).