Stai usando un browser non aggiornato. Potresti non visualizzare correttamente questo o altri siti web. Dovreste aggiornare o usare un browser alternativo.
Ciao gente, volevo sapere quali sono le differenze principali tra perl 5 e perl 6 e dove posso imparare perl, oppure se c'è un lang migliore per scripting.
Ciao gente, volevo sapere quali sono le differenze principali tra perl 5 e perl 6 e dove posso imparare perl, oppure se c'è un lang migliore per scripting.
Non sono esperto su questo argomento ma navigando in rete ho trovato questa discussione di reddit dove si fa un po' il punto della situazione con diversi spunti su dove attingere informazioni o eventuali guide, vedi se può esserti utile
Ormai sono considerati di fatto due linguaggi diversi: perl 6 adesso si chiama raku, perl 7 sarà il proseguo di perl 5 e raku andrà avanti per i fatti suoi. Per far capire meglio posto un esempio preso da rosettacode
Perl:
# Quicksort in perl 5
sub quick_sort {
return @_ if @_ < 2;
my $p = splice @_, int rand @_, 1;
quick_sort(grep $_ < $p, @_), $p, quick_sort(grep $_ >= $p, @_);
}
Perl:
# Quicksort in raku (perl 6)
multi quicksort([]) { () }
multi quicksort([$pivot, *@rest]) {
my $before := @rest.grep(* before $pivot);
my $after := @rest.grep(* !before $pivot);
flat quicksort($before), $pivot, quicksort($after)
}
e il classico parse da command line che da echo "Hello world" | perl -e 'print while <>;' diventa echo "Hello world" | raku -e '.say for lines();'. La sintassi è cambiata significativamente, non è una differenza superficiale come quella tra python 2 e python 3. Ovvio che se prima si chiamava perl 6 un motivo c'è... la filosofia è rimasta la stessa, ma ormai è meglio trattarli come due linguaggi distinti.
Probabilmente sì. Hanno il loro use-case (e.g., manipolazione di stringhe) ma non sono trendy. Non so cosa sei interessato a fare, ma immagino che potrebbe interessarti python.