Schrift
[thread]11794[/thread]

Wunschliste für Perl 5.12 (Seite 2)

Leser: 1


<< |< 1 2 >| >> 17 Einträge, 2 Seiten
moritz
 2008-05-13 17:49
#109657 #109657
User since
2007-05-11
923 Artikel
HausmeisterIn
[Homepage]
user image
Code: (dl )
chomp($str)
verändert in Perl 6 den String nicht, sondern liefert eine ge-chomp'te Version zurück. Daher gibt es
Code: (dl )
$str.=chomp
pktm
 2008-05-13 18:52
#109658 #109658
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
moritz+2008-05-13 15:49:07--
Code: (dl )
chomp($str)
verändert in Perl 6 den String nicht, sondern liefert eine ge-chomp'te Version zurück. Daher gibt es
Code: (dl )
$str.=chomp


Ok, nun sind wir ja noch bei 5.10... :)
http://www.intergastro-service.de (mein erstes CMS :) )
Gast Gast
 2008-05-13 20:39
#109659 #109659
pktm+2008-05-13 14:02:01--
Finde ich voll unleserlich und unnütz. Es ist bei Perl schon so immer eine Gradwanderung zwischen kurzer und leserlicher Schreibweise, da muss ich nicht noch 20 zusätzliche (zu den ohnehin schon 50 anderen) Operatoren definieren, die seltenst mal Verwendung finden könnten.

So unleserlich finde ich das gar nicht :)
Und unnütz ist es zwar schon, weil es ja nur ein paar Zeichen spart, aber da muss man immer abwägen, man könnte auch behaupten elsif { ... } sei unnütz, weil man ja auch ein else { if () { ... } } schreiben kann ;)

Natürlich gibt es eine Menge Operatoren, aber wenn jemand Perl lernt, und diese Operatoren kennen lernt, wird er bei A ->= B auch sofort an A = A->B denken, weil er dieses Verhalten von +=, -=, .=, ... schon gewohnt ist.

MfG
pq
 2008-05-13 22:09
#109661 #109661
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
Gast+2008-05-13 18:39:19--
Und unnütz ist es zwar schon, weil es ja nur ein paar Zeichen spart, aber da muss man immer abwägen, man könnte auch behaupten elsif { ... } sei unnütz, weil man ja auch ein else { if () { ... } } schreiben kann ;)

naja, elsif macht code ja leserlicher.
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
if ($foo) {
    ....
}
else {
    if ($bar) {
        ....
    }
}

vs.
if ($foo) {
    ....
}
elsif ($bar) {
    ....
}

bei mehreren verschachtelungen wird das schnell unübersichtlich. (deswegen frage ich
mich auch schon lange, warum HTML::Template kein elsif kann.)
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
pktm
 2008-05-14 00:15
#109664 #109664
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
pq+2008-05-13 20:09:05--
(deswegen frage ich
mich auch schon lange, warum HTML::Template kein elsif kann.)


Hat der Modulautor dazu nicht irgendwo geschrieben, dass sei was Performanztechnisches?
http://www.intergastro-service.de (mein erstes CMS :) )
sid burn
 2008-06-10 16:03
#110936 #110936
User since
2006-03-29
1520 Artikel
BenutzerIn

user image
Gast+2008-05-13 18:39:19--
pktm+2008-05-13 14:02:01--
Finde ich voll unleserlich und unnütz. Es ist bei Perl schon so immer eine Gradwanderung zwischen kurzer und leserlicher Schreibweise, da muss ich nicht noch 20 zusätzliche (zu den ohnehin schon 50 anderen) Operatoren definieren, die seltenst mal Verwendung finden könnten.

So unleserlich finde ich das gar nicht :)
Und unnütz ist es zwar schon, weil es ja nur ein paar Zeichen spart, aber da muss man immer abwägen, man könnte auch behaupten elsif { ... } sei unnütz, weil man ja auch ein else { if () { ... } } schreiben kann ;)


Nope, unnütz ist es nicht und du kannst ein elsif nicht durch ein else { if() {} } Konstrukt ersetzen. Versuche mal sowas zu ersetzen...

Code: (dl )
1
2
3
4
if ( $foo eq 'bar' ) {}
elsif ( $foo eq 'baz' ) {}
elsif ( $foo eq 'bat' ) {}
else {}


Code: (dl )
1
2
(deswegen frage ich
mich auch schon lange, warum HTML::Template kein elsif kann.)

Ich frage mich warum es nicht noch viel mehr kann. ^^

Und mit Trennung von Design und Code hat HTML:Template auch nicht viel zu tun...
Nicht mehr aktiv. Bei Kontakt: ICQ: 404181669 E-Mail: perl@david-raab.de
MatthiasW
 2008-06-10 17:15
#110942 #110942
User since
2008-01-27
367 Artikel
BenutzerIn
[default_avatar]
>Versuche mal sowas zu ersetzen...

Code: (dl )
1
2
3
4
5
6
7
8
if ( $foo eq 'bar' ) {}
else {
if ( $foo eq 'baz' ) {}
else {
if ( $foo eq 'bat' ) {}
else {}
} # else
} # else

Soll jetzt aber nicht heißen das elsif unnütz ist ;)
perl -E'*==*",s;;%ENV=~m,..$,,$&+42;e,$==f;$"++for+ab..an;@"=qw,u t,,print+chr;sub f{split}say"@{=} me"'
<< |< 1 2 >| >> 17 Einträge, 2 Seiten



View all threads created 2008-05-13 00:21.