>[оверквотинг удален]
> if (a) {
> if (b) {
> if (c) {
> .....
> }
> ...
> }
> ...
> }
> найти, кто кого харлал.Тоже мне, проблема. Найти какой-нибудь форматтер исходников, потом работать как обычно. Без всяких geany, хоть в "Блокноте". Кстати, как писать программы на Python'е не в редакторе, а на неразлинованной бумажке? :)
> Ну а если писать:
> if (a) {
> if (b) {
> if (c) {
> то тогда логичный вопрос - а нахрена это дублировать ещё и скобочками?
> "Ты в зоопарке быль? Там питон видель?" Или это только вымышленные проблемы,
> не проверенные практикой?
Я пишу и на Perl и на Python, поэтому у меня есть что и с чем сравнивать.
>[оверквотинг удален]
> my $n = shift;
> if ($n==0) {
> return 1;
> } else {
> return $n*factorial($n-1);
> }
> }
> и посчитаем конструкции, которые нужны компьютеру, но не человеку, все эти ;,
> $, (, {
> Вот на что внимание расходуется больше.
Пример надуман.
sub factorial {
my $n = shift;
return 1 unless $n;
return $n * factorial($n - 1);
}
Настоящие эстеты могут вообще всё упаковать тернарным оператором.
Иногда простота - хуже воровства. Когда я вижу $a->{$b}->[$c], я понимаю больше, чем когда вижу a[ b][c]. Когда я вижу $a eq $b я понимаю больше, чем a == b. Когда я вижу:
if ($s =~ m/^0x([[:hexdigit:]]+)$/)
{
$a = hex($1);
}
Я понимаю больше и пишу это быстрее, чем в Python с его библиотекой re. Даже пример писать не хочется, потому что придётся сейчас в документацию лезть.