Corso di Raku / Avanzato / Altro sui tipi predefiniti

Data e ora

Raku dispone di tipi predefiniti per lavorare con le date del calendario e gli orari. Una data è rappresentata dal tipo Date. Si crea fornendo l’anno, il mese e il giorno:

my $d = Date.new(2026, 6, 27);
say $d; # 2026-06-27

Una volta ottenuta una data, è possibile leggerne le singole parti:

my $d = Date.new(2026, 6, 27);
say $d.year;  # 2026
say $d.month; # 6
say $d.day;   # 27

Il metodo day-of-week restituisce il giorno della settimana in cui cade la data, numerato da 1 per il lunedì a 7 per la domenica:

say Date.new(2026, 6, 27).day-of-week; # 6

Il 27 giugno 2026 è un sabato, quindi il risultato è 6.

Il metodo is-leap-year indica se la data si trova in un anno bisestile:

say Date.new(2024, 1, 1).is-leap-year; # True
say Date.new(2026, 1, 1).is-leap-year; # False

Per ottenere la data odierna, si chiama Date.today. Non ne mostriamo l’output qui, perché dipende dal giorno in cui si esegue il programma.

Argomenti di questa sezione

Pratica

Risolvi 2 quiz sul contenuto di questa sezione.

Esercizi

Questa sezione contiene 3 esercizi. Guarda tutti gli argomenti di questa sezione prima di iniziare gli esercizi.

  1. Settimane a Natale
  2. Una settimana dopo
  3. Giorno della settimana

Soluzione: Un heredoc   |   Aritmetica delle date