[Discussioni] Risparmio

loredana llcfree a gmail.com
Sab 2 Ago 2014 18:12:32 CEST


On Thu, 2014-07-31 at 22:05 +0200, Gian Uberto Lauri wrote:
> >>>>> "l" == loredana  <llcfree a gmail.com> writes:
> 
> l> On Thu, 2014-07-31 at 16:34 +0200, saint a eng.it wrote:
> >> O ditemi voi, Loredana e Marie-Odile, quale strumento libero
> >> avrebbe potuto usare la gente all'epoca.
> 
> l> ho scritto un package per
> l> i primi xt e per il vax (due architetture non proprio identiche)
> 
> Naaa, interi a 16 bit e allineamento alla word, se rimanevi nei
> fatidici 64 K sul PC l'architettura HW non rompeva molto in C. Se
> invece sei riuscita con un solo codice a gestire l'uso di 64k sia su
> una macchina con indirizzamento virtuale che con un [censura] con
> memoria segmentata... Beh, caruccia la cosa.

Naaa, non parliamo della stessa cosa (o, meglio, io parlo della "cosa" e
tu d'altro. L'xt non era piu' cosi limitato:

http://en.wikipedia.org/wiki/IBM_Personal_Computer_XT

Quanto alle dimensioni degli interi, mai sentito parlare di compilatori?

Se uno ha il sorgente, lo compila per macchine e architetture diverse,
mica lo riscrive perche' la parola e' di 16 o 32 bit ... Non nelle
applicazioni di alto livello, non in quelle, perlomeno, in cui la
dimensione della parola non e' tenuta in conto perche' non rilevante.

Certo che se scrivo codice che dipende dal fatto che i bit sono 16 o 32,
quella parte me la devo riscrivere. Ma i tipi, nei linguaggi di
programmazione, li hanno inventati gia' da un bel po' di decenni e se
scrivo long e' poi il compilatore che sa se sto su una macchina a 16 a
32 o a 64 bit, mica me ne occupo io. 

> Quello che sicuramente era diverso era l'I/O, sopratutto se non si
> vuole fare la becera telescrivente.

> Che faceva di bello? E sopratutto: con quanti sei riscita a condividerlo?

Acquisizione, elaborazione e analisi di vario tipo del segnale
mioelettrico (quello che viene dai muscoli, per intenderci). E' simile
al segnale elettroencefalografico e all'elettrocardiogramma, che forse
sono piu' noti. Come tutti i segnali, e' una sorta di codice che si puo'
cercare di decifrare per ottenere altre informazioni di intersse teorico
(come il sistema nervoso comanda i muscoli, per esempio), clinico (come
varia con le patologie), sportivo (come varia con l'allenamento) etc.
etc.

Quanto alla condivisione, e' stato condiviso con i ricercatori che lo
hanno usato, ci sono dozzine di pubblicazioni. Parte dello stesso codice
e' finito nella pancia di diversi altri programmi perche' certe funzioni
erano le stesse. E' transitato su macchine con architetture diverse. I
risultati erano presentati in forma grafica. Io mi ci ero divertita, era
una parte della mia tesi. L'acquisizione si faceva con un toshiba 286 a
cui era stata aggiunta una scheda d'acquizione programmata in assembler,
quella parte era chiaramente non portabile su vax, ma tsnto uno mai si
sarebbe sognato di portarsi dietro un vax per fare esperimenti, l'avete
mai visto un vax :) Per chi non era ancora nato, il toshiba 286 era il
"portatile" d'allora, un cassone pesante con 100MB di disco fisso, un
vero lusso, maledettamente utile per quei tempi.

Ma non e' questo il punto, il mio era solo uno dei tanti esempi
possibili.

Il punto e' che si puo' scrivere codice portabile, anche quando si
definisce una propria rappresentazione interna. Da sempre. Ho dovuto
modificare la routine di acquisizione quando si e' passati dall'xt
alla'at, che aveva un clock piu' veloce, un fantasmagorico 13MHz, se
ricordo bene. Ma tutto il resto no. E tra un terminale grafico di allora
e un plotter, tra un xt e un vax, di differenze ce n'erano, posso
garantirlo. Questa e' la vera potenza dell'informatica, che e' fatta a
strati, e da un livello all'altro, giu' giu' fino all'hardware, ci
pensano strumenti automatici a tradurre, permettendo applicazioni sempre
piu' complesse. Il codice ad alto livello, quello che sta sopra il
compilatore o l'interprete o la macchina java o quel che si vuole, puo'
essere uno solo, che si migliora nel tempo e lo si adegua, di fatto
senza doverlo buttare (se continua a servire). 

Posso garantire che, per come me le immagino, le funzioni della PA non
variano rapidamente, ne' variano da luogo a luogo. Le possibilita' di
"risparmiO", in quel settore, sono enormi e il titolo di questo thread
mi sembra davvero appropriato. 

Questo perche' alla fine del gioco, in fondo in fondo, qualsiasi oggetto
digitale, sia dato o programma, non e' che una sequenza di bit, che
diventano azioni fisiche una volta associati a valori fisici (come due
diversi valori di tensione). Basta non nascondere come devono essere
interpretati quei bit e poi chiunque li puo' interpretare, certo, non
senza fatica, e deve imparae come fare. Ma se io non ti dico cosa quegli
zeri e quegli uni significano, allora la cosa si complica ed e' cosi'
che posso mungerti come voglio... impedentoti allo stesso tempo di
crescere, costretto come sei a fare e rifare le stesse identiche cose.

> Spocchia a parte. Tu hai una cultura informatica non banale, ma
> Sangemini, nelle PA - almeno in Italia - ci andavano laureati in
> discipline umanistiche o meglio in legge. Che era un miracolo se
> usavano pi di due dita sulla tastiera di una macchina per scrivere
> meccanica.

A parte che non e' spocchia, solo un tentativo di farsi capire da chi fa
tanta fatica ...

A parte che trovo molto sgradevoli certi giudizi ...
 
Non ci vuol comunque molto a sapere cosa sia una codifica e basta solo
sapere la differenza tra un assembler, legato alla macchina, e un
linguaggio compilato, per intuire che e' possibile scrivere codice
portabile. Il passaggio e' lo stesso non solo tra compilatore e
assembler, ma a tutti i livelli. Si tratta sempre di una traduzione. 
Quando si scrive codice, si isola il layer che dipende specificatamente
da quell'architettura, da un dato sistema operativo etc. Si definiscono
quelle che in linguaggio moderno si chiamano api, si scrive, ad esempio,
la parte grafica usando una libreria grafica che si occupa di tradurre
lo STESSO codice per dispositivi diversi, usando i driver relativi,
proprio come un compilatore traduce lo stesso codice in linguaggio
macchina per macchine diverse e il gioco e' fatto. 

Stessa trafila, opportunamente adattata, per passare dalla
rappresentazione interna di un documento o di qualsiasi altro dato a
quella esterna che noi vediamo e usiamo. Certo che se non ti do' quello
che sta in mezzo... e tu te lo devi riscrivere senza le specifiche ...
magari su un hardware per cui non ti do' i driver...

Questi sono concetti di base per QUALSIASI applicazione,
indipendentemente dal linguaggio. Tutta l'informatica si basa su questi
pochi principi universalmente validi. Io sono sicura che chiunque li
possa capire, e' solo la tecnica specifica che e' rognosa, non i
concetti in se'. Basta accettarli come veri, eprche' lo sono, e poi
tutto il resto segue.

Ed e' su queste basi che mi sono permessa di dire che, volendo, si
puo'/poteva/potra' proprio fare in tutte le stagioni della ormai
decennale vicenda digitale e che per renderlo quasi impossibile si deve
fare uno sforzo notevole, occorre un'operazione che snatura
l'informatica. Ed e' per questo che non mi pare che quanto accaduto e
quanto continua ad accadere non possa essere stato casuale.

Cio' non significa che i singoli se ne siano resi conto, anzi! Ed e' per
questo che mi ostino a spiegare l'ovvio, che pero' sta ormai in
profondita' e di cui si patiscono solo piu' gli effetti. Delle cause non
si parla mai o quasi mai. Eppure darebbero spunti concreti per
rivendicazioni tanto sacrosante quanto diffilmente eludibili. Perche' 2
+2 "FA" 4.

> Riesci a darmi una vera, concreta, alternativa all'informatizzazione
> degli uffici che non fossero i PC con il DOS? Una alternativa che
> fosse pi che teorica o "sperimentale" - come il gestionale per un
> negozio di libri che ho visto girare su un Commodore 64 o l'archivio
> per videocassette che aiutai a scrivere su un VIC 20 con l'espansione
> da 16K?

Io speravo si fosse capito che il problema non e' il dos o windows o mac
o adobe o google o debian o ubuntu etc.

Gli esempi mi servivavo a quello, ma non basta mai :) Rispondo solo
perche' la confusione e' tale, in un contesto in cui dovrebbe essere
semplice discutere di problemi di questo tipo, che forse val la pena di
sottolineare che  non e' questo il modo e trovarne insieme uno migliore,
che lasci possibilmente da parte gli ego fuori misura, i fattacci
personali, metta da parte gli attacchi personali o generici e permetta
cosi' a chiunque di contribuire quello che puo' alla soluzione dei
problemi, dal suo punto di vista e in base alla propria esperienza. C'e'
davvero bisogno del contributo di tutti, non di finire per ritrovarsi
tutti contro tutti.

Amen :0

Loredana





More information about the discussioni mailing list