Cursus Raku / Programmatio functionalis, simultanea, reactiva et retialis / Programmatio functionalis / Sequentiae pigrae et infinitae
Sequentiae infinitae
Substitue valorem finalem per * et sequentia
infinita fit — ultimum elementum non habet. Quia index
piger est, hoc omnino tutum est: nihil computatur donec illud sumas.
say (1, 2, 4 ... *).head(5); # (1 2 4 8 16)Series potentiarum duorum in perpetuum pergit, sed
.head(5) solas quinque primas extrahit. Intervallum
1..* simplicissima sequentia infinita est — omnes integri
ab uno:
say (1..*).head(3); # (1 2 3)
say (1..*).map(* ** 2).head(4); # (1 4 9 16)Sequentiam etiam per propria elementa priora definire potes. Sequentia Fibonacci, ubi unusquisque numerus summa duorum priorum est, celebriter una linea scribitur:
my @fib = 1, 1, * + * ... *;
say @fib[^10]; # (1 1 2 3 5 8 13 21 34 55)Clausura * + * duo elementa priora capit eaque addit.
Sequentiam in @fib reponere hic rectum est quia operator
... eam ut pigram notat, itaque ordo non conatur eam totam
computare — sola decem elementa a @fib[^10] petita umquam
producuntur.
Regula pollicis: sequentia infinita tuta est dum ex ea solam partem finitam extrahis.
Exercitatio
Sequuntur 1 quiz de contentis huius argumenti.
Navigatio cursus
← Quiz — Operator sequentiae | Quiz — Sequentiae pigrae →
💪 Vel recta ad exercitationes huius sectionis
i.