Thread Natürlicher Sort, aber nicht mit @sorted = sort @unsorted (30 answers)
Opened by Student87 at 2013-02-05 17:52

Muffi
 2013-02-06 10:45
#165509 #165509
User since
2012-07-18
1465 Artikel
BenutzerIn
[default_avatar]
Quote
Ich wußte nicht, dass die einzelnen Funktionen mit den Ergebnissen der weiter rechts stehenden Funktion weiterarbeiten. So eine Syntax hätte ich schneller verstanden:

my @sorted = map(Anweisung) {sort(Anweisung) {map(Anweisung){@unsorted} } }


Das ist eigentlich relativ logisch.
Die Syntax von map ist:
@neues_array = map { code } @altes_array;

D.h. bevor der map gestartet werden kann muss das @altes_array da sein und dem map übergeben werden, damit der damit was machen kann.

Genauso wie bei $a = 2; Perl von rechts nach links arbeitet und erst die 2 hat, die er dann $a übergibt. Bei $a = foo(); wird erst foo() aufgerufen, bevor die Zuweisung passiert.

Genauso kann statt @altes_array irgendwas stehn was ein Array zurückliefert, wie z.B. ein Sort. Der muss natürlich erst aufgerufen werden, damit map sein Array kriegt.
1 + 1 = 10

View full thread Natürlicher Sort, aber nicht mit @sorted = sort @unsorted