und weitere schreckensnachrichten aus dem perl6 lager für die, rules, roles, macros, oop model, given, neue operatoren, neues blockhandling noch nicht genug neues ist: ein neues buzzwort:
C A P T U R E S
dies wird neben skalaren array und hashes (pairs haben keine sigil) der vierte grosse datentyp in perl6 mit eigner sigil "|", können aber wie hashes und arrays normal in einem skalar gepeichert werden.
perl5 aktivisten würden sagen klar denn der skalar beinhaltet die referenz auf ein array aber nein offiziell gibt es gar keine referenzen in perl6, sie wurden durch captures ersetzt auch wenn einfach referenzierung und derefernzierung bei syntaxgleichheit noch genauso funktioniert wie in perl5 ist der allgemeine mechanismus ein komplexerer als vorher.
my $ref = \("text"); # erzeugt eine capture
say $$ref; # gibt text aus
was sind also captures? grob gesagt eine signatur (das was man an eine subroutine übergibt beim aufruf, also eine seltsame mischung aus array und hash denn perl6 kennt positionale und benannte parameter), captures werden aber auch beim umgang mit rules, xml nodes und anderen strukturierten daten einsetzbar sein. Es übernimmt auch etwas die funktion der globs die es ja auch nicht mehr gibt da das * ausser für Multiplikationen noch für slurpy arrays und globale variablen kennzeichnet.
das mag erstmal alles verwirrend klingen aber je mehr ich ndarüber nachdenke desto mehr begeistert es mich. bin auch noch erst beim studieren von
http://svn.openfoundry.org/pugs/docs/Perl6/FAQ/Capture.pod
und
http://dev.perl.org/perl6....binding
und werde wenn mich meine musse küsst später noch detailierter zu dem und anderen perl6 neuerungen schreiben\n\n
<!--EDIT|lichtkind|1161915494-->