Krawatte :: Lazylist

Perl-Erweiterung für faule Listen, die auf Anfrage wachsen
Jetzt downloaden

Krawatte :: Lazylist Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Goldin Evgeny
  • Website des Verlags:
  • http://search.cpan.org/~genie/

Krawatte :: Lazylist Stichworte


Krawatte :: Lazylist Beschreibung

Perl-Erweiterung für faule Listen, die auf Anfrage wachsen Krawatte :: LAZYLIST ist ein Perl-Modul, mit dem Sie faule Listen erstellen können ("unendliche Listen, deren Schwanz unaufwertet bleiben", Watt) auf Anfrage mit benutzerdefinierter Generationsfunktion wächst. Was Sie haben, ist ein gewöhnliches Perl-Array, dessen Elemente generiert werden Durch einige Funktion und auf, auf die von $ arr als anderer zugegriffen werden kann, aber eigentlich unter der Haube wächst, wenn das Element, auf das Sie zugreift, nicht erstellt wird. Auf diese Weise ist der für das Array verschwendete Speicher nicht mehr (und nicht weniger, leider), dann brauchen Sie. Denken Sie darüber nach, als dynamisch wachsende Faktorien (Fibonacci-Nummern, arithmetische Fortschritte. Es ist eigentlich - geh und arbeite damit! Sehen Sie sich das Beispiel oben an - ich denke, sie zeigen die Einfachheit .synopsis Verwenden Sie Tie :: Lazylist; # faule Liste der Factorials Tie @arr, 'Krawatte :: Lazylist', , 'Tatsache'; Tie @ ARR2, 'Krawatte :: Lazylist', 1, Sub {My ($ array_ref, $ n) = @_; $ array_ref -> * $ n}; Tie @ ARR3, 'Krawatte :: Lazylist', \ @arr; drucken "$ _ \ n" für @arr; # druckt (ewigal) Werte von 1!, 2!, 3! .. Drucken Sie "$ _ \ n" für @ ARR2; # derselbe Druck "$ _ \ n" für @ ARR3; # Dieselbe # faule Liste von Kräften von 2 Krawatte @arr, 'Krawatte :: Lazylist', 2, 'Pow'; Tie @ ARR2, 'Krawatte :: Lazylist', 1, Sub {My ($ array_ref, $ n) = @_; $ array_ref -> * 2}; Tie @ ARR3, 'Krawatte :: LAZYLIST', \ @ ARR2; drucken $ arr , "\ n", # druckt 1024 = 2 ^ 10 $ arr2 , "\ n", # derselbe $ arr3 , "\ n"; # Dieselben # lasy Listen von Fibonacci-Zahlen, arithmetische / geometrische Fortschritte und ihre Summen usw. Anforderungen: · Perl.


Krawatte :: Lazylist Zugehörige Software