Pipes, ovvero qual è il titolo di questo post?

Devo una risposta a un giovane nerd davvero über (anche se feroce sostenitore di JavaScript, ma gli passerà (con il tempo) (forse)). In breve la risposta è sì.

Non ricordo da dove siamo partiti (sapete la RAM, la mia) ma siamo finiti che su come si fanno adesso le cose io ormai sono rassegnato, personalmente ci rinuncio e mi occupo solo di programmazione funzionale (Haskell, anche se è tutt’altro che semplice, troppo matematicoso).

In particolare Windows, non ci riesco più. È cambiato da quando lo usavo io –XP– e ha cambiato gli utenti. Per esempio il vantaggio di Octave (per i ricchi MatLab) rispetto a Python è l’ambiente integrato, fai tutto lì dentro, tutto a portata di mouse. Python invece… Uh! ecco, eravamo partiti di lì. E io dicevo che ultimamente con Numpy, Scipy, Matplotlib, Pandas &co. sarà dura per gli altri.

Ma mi hanno detto che sono legato ai tempi della linea di comando 😡
Che è la vera verità. Ovviamente.

Avrei anche potuto raccontare di quando sul TTY avevi un solo processo in foreground, altri potevi lanciarli in background con l’opzione &, i giovani non capirebbero. Mi sono invece lanciato a magnificare la potenza e l’eleganza della shell, per esempio le pipes:

(mica è facile trovare un esempio semplice e significativo nella history 😐)

Visto che ormai ero lanciato ho dichiarato che si potrebbe fare ancora oggi, con gli script autoprodotti, per esempio con questo: Leggere dati in formato CSV con impostazioni locali.

Sul momento non ho fatto una demo volante, ma adesso arriva. Anzi eccola qui:

Visto? e questi sono gli scripts python:

somma.py

import fileinput

somma = 0
for line in fileinput.input():
    somma += int(line)
print(somma)

prodotto.py

import fileinput

prodotto = 1
for line in fileinput.input():
    prodotto *= int(line)
print(prodotto)

E, ovviamente, si può fare di più, per fare la somma dei quadrati dei dati uso

quadrati.py

import fileinput

for line in fileinput.input():
    n = int(line)
    quad = n * n
    print(quad)

ed ecco

Sì, anche con Windows, dove cat si chiama type. Ma questa è solo una demo da completare, un inizio.
A contarla tutta, mentre io parlavo, GG (posso usare ancora una volta il vecchio nick?) ha risposto a tutte le mails sul telefono, bravissimo a scrivere con i soli pollici. Li ho opponibili anch’io ma non ci riuscirei mai. Ecco.

🤩

Posta un commento o usa questo indirizzo per il trackback.

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google photo

Stai commentando usando il tuo account Google. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.

%d blogger hanno fatto clic su Mi Piace per questo: