Thread Sort VS Schwartz'sche sort ??? - Benchmark (21 answers)
Opened by Updecrator at 2006-01-03 11:05

ptk
 2006-01-04 01:48
#61465 #61465
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
[quote=steffenw,03.01.2006, 23:53]
map gibt es in 2 Varianten:
@a2 = map "irgendwas $_", @a1;
oder
@a2 = map {"irgendwas $_"} @a1;
Durch den {} Block wird jedes Mal der Garbage-Collector angeworfen, was bei der ersten nicht ist.[/quote]
Du meinst wohl: bei der {...}-Notation wird mit Scopes gearbeitet, wobei durch das Reference-Counting Variablen zerstört werden können (eine klassische GC hat Perl5 ja nicht).

Und tatsächlich:
Code (perl): (dl )
1
2
3
4
5
6
7
use strict;
use Benchmark qw(cmpthese);

my @a1 = (1..100);
cmpthese(-3, {"string" => sub { my @a2 = map "irgendwas $_", @a1 },
          "code"   => sub { my @a2 = map { "irgendwas $_" } @a1; },
         });


Hiermit bekomme ich mit der "code"-Variante 1% langsamere Ergebnisse. Naja, damit kann ich leben, ich finde die {...}-Variante einfach schöner zu lesen.

View full thread Sort VS Schwartz'sche sort ??? - Benchmark