OT: php te daña la cabeza
Roberto Bonvallet
rbonvall en alumnos.inf.utfsm.cl
Jue Jul 27 11:23:17 CLT 2006
Horst H. von Brand:
> Yo tambien. Pero indento segun un esquema logico, que no necesariamente
> coincide con la sintaxis.
>
> fprintf(stderr, "Este es un mensaje de error "
> "demasiado largo.\n"
> "Incluso no cabe en una linea, "
> "y debe cortarse en varias.\n"
> "Algunos datos: i es %d, j es %d, k es 0x%3x\n",
> i, j,
> calcule_el_valor_de_k_mediante_una_compleja_expresion());
[...]
> > Podria dar un ejemplo en que no coincidan? A mi se me ocurren puros
> > ejemplos con goto, que no existe en Python.
>
> Ver arriba. Ver los dos if anidados que di en el ejemplo anterior.
Por los ejemplos que propone, pareciera que Python impone un regimen de
tipo stalinista respecto a estructura visual del codigo. La realidad es
que Python si acepta:
- if anidados
- if dentro de un else (usando elif, el hermano del elsif de Perl)
- lineas en blanco
- multiples sentencias por linea (punto y coma separa, como en Perl)
- lineas del tipo "if condition: dosomething()"
- cortar una linea larga y alinear las partes a gusto
- escribir una lista (arreglo) literal en varias lineas, indentadas como sea
- concatenacion automatica de strings (como en C)
La unica diferencia con C es que en vez de abrir llave se indenta, y en vez
de cerrar llave se desindenta.
[...]
> La division de texto en lineas, paginas, etc es arbitraria en el lenguaje
> natural, i.e., los espacios no tienen significado particular.
"Projects promoting programming in natural language are intrinsically doomed
to fail." -- Edsger Dijkstra
--
Roberto Bonvallet
Más información sobre la lista de distribución Linux