Cursus Raku / Geavanceerd / Debuggen / Waarden omzetten naar tekst
De juiste kiezen
Voor alledaagse scalaire waarden zoals getallen en strings zien alle
drie de representaties er hetzelfde uit. Ze beginnen te verschillen bij
samengestelde of ongedefinieerde waarden. Hier is een Pair
op drie manieren weergegeven:
say (foo => 1).gist; # foo => 1
say (foo => 1).Str; # foo 1
say (foo => 1).raku; # :foo(1)Een grove vuistregel:
.gist— voor uitvoer bedoeld om door een persoon gelezen te worden (say,note)..Str— voor uitvoer die platte tekst is (print,put, interpolatie, de~operator)..raku— voor een codeachtige representatie bij het debuggen (dd).
Elk van deze methodes kan je eigen definitie krijgen wanneer je een klasse schrijft, zodat je eigen objecten ook netjes worden afgedrukt. Daar komen we op terug wanneer we klassen maken in het volgende deel.