Fish Shell:
Utilizzo di un interprete interattivo (REPL)
Come fare:
In Fish, la shell interattiva è la modalità predefinita all’avvio. Ecco come appare in azione:
> set color blue
> echo "Il cielo è $color"
Il cielo è blue
Puoi anche eseguire funzioni incorporate e giocare con le sostituzioni di comandi:
> function cheer
echo "Vai Fish $argv!"
end
> cheer Coders
Vai Fish Coders!
Non solo definendo funzioni, puoi eseguire snippet di codice al volo e vedere l’output istantaneamente:
> math "40 / 2"
20
Approfondimento
Il concetto di REPL risale al linguaggio di programmazione Lisp negli anni ‘60. Questa forma di programmazione interattiva ha stabilito il benchmark per ambienti come ipython
di Python e irb
di Ruby. Fish continua la tendenza con un focus sull’usabilità e sull’uso interattivo.
Fish si differenzia da altre shell come Bash in quanto è progettata con l’interattività in mente fin dall’inizio. Offre evidenziazione della sintassi, autosuggerimenti e completamenti automatici che lo rendono potente da utilizzare in un workflow in stile REPL. Meglio ancora, i tuoi comandi sono ricordati e ricercabili, rendendo il testing ripetuto un gioco da ragazzi.
Le alternative al REPL di Fish potrebbero essere bash
o zsh
quando abbinati a estensioni come bash-completion
o oh-my-zsh
, ma Fish tende ad offrire un’esperienza più ricca già pronta all’uso.
Vedi Anche:
- Documentazione di Fish: https://fishshell.com/docs/current/index.html
- Un interessante confronto tra Fish e altre shell: https://www.slant.co/versus/2209/3686/~fish_vs_bash
- Un approfondimento sui REPL: https://en.wikipedia.org/wiki/Read–eval–print_loop
- Programmazione interattiva in Lisp, uno sguardo storico: http://www.paulgraham.com/ilisp.html