Doug & la pipe

pipe

Un post di storia, anzi no: nostalgia. Quando ho iniziato a trafficare con i computers, tanto tempo fa, interagivo con un Prime (il 550 II con ben 512KB di RAM, tanti allora), in Fortran prevalentemente ma non solo.
Il sistema operativo era il PRIMOS, derivato (no, non ho links) da MULTICS.
Poi il mondo è cambiato e sono arrivati prima Apollo e poi Unix.

Allora, appena prima dell’arrivo di Apple II e PC IBM e compatibili, Unix era il massimo delle aspirazioni, tranne per i commerciali (quelli vedevano solo COBOL) e quelli del VAX (sì, scientifici e con un Fortran che fungeva da riferimento: “gira sul VAX?”).

Unix introduceva tante novità, tutto era programmabile. La gente normale, i capi, i vecchi, lo giudicavano costoso e difficile. Per me e un paio di altri che condividevano la mia storia una grossa novità fu la pipe. Adesso racconto una cosa che non so se posso. Con il Prime avevi spesso una tripletta: pre-prog, prog e post-prog. L’elaborazione era svolta dal programma prog ma conveniva formattargli i dati come pretendeva partendo da una versione più umana, la fase pre-. E alla fine per capire i risultati serviva un post-. Il tutto con l’aggiunta di qualche COMO (no, non racconto, non è essenziale ma anche loro servivano). Ecco con Unix c’erano le pipes e l’elaborazione diventava pre-prog | prog | post-prog 💥 Ci voleva tanto a capirlo? Sì, Doug. E i capi… (qualcuno non si è mai convertito).

Adesso, tanto tempo dopo, Jessie mi suggerisce The Origin of Unix Pipes e scopro che l’idea era già vecchia quando Thompson &co l’hanno implementata in Unix.

Ah! jessie frazelle👩🏼‍🚀 Seguito da Anjana Vakil, Kyle Purdon e altri 18 che segui, e a me nessuno dice niente! e poi servirebbe anche sed 's/ito/ita/'. Adesso la seguo anch’io, e considero ieri (OK, l’altro ormai) un giorno fortunato, speso bene.

E c’è –ma devo ancora leggerlo– the Bell Systems Technical Journal, un PDF di 388 pagine. Ancora il Program design in Unix di Rob Pike e Brian W. Kernighan.

Ottimo il consiglio finale di Jessie: I hope this post helped you learn something, if not, just pipe it to /dev/null.

Ci sono nel tweet citato altre dritte, p.es. Release.0, the beginning.
Insomma sono in ritardo su altre cose (per me è difficile prevedere quanto tempo richiederà sviluppare qualcosa, spesso verrà ridefinita più volte, ampliata, aggiornata, … anche facendo una buona analisi, su carta, prima) ma dritte come queste mica posso certo lasciarmele scappare 💥😋😁

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: