[Flug] Voi che ci capite a pacchi: mysql
Gian Uberto Lauri
saint@eng.it
Mer 19 Mar 2014 12:38:46 CET
Massimiliano Masi writes:
> Ciao,
>
> Il giorno 19/mar/2014, alle ore 10:29, Gian Uberto Lauri <saint@eng.it> ha scritto:
> >
> > Cominciamo col fatto che aggiungi strati di codice (ovvero strati di
> > terreno di coltura per bug), che se metti più macchine cominciano ad
> > esserci questioni da calibrare bene a livello architetturale, che devi
> > stare bene attento a cosa sbatti in sessione...
>
> Ascolta, anche se tu lo fai in F# (il linguaggio piu' brutto che conosca)
> tu devi garantire reliable messaging...
Spiegati meglio.
> E no invece! Non mi interessa nemmeno se programo in C!
Errore. Ed anche grave. Non viviamo nel mondo della lavagna.
Non dico di arrivare a sapere dove e come ti verrà invalidata la
pipeline del processore[1], ma sapere cosa accade come oggetti
allocati et similia è dannatamente doveroso.
Piccolo quiz: hai un array di integer, ne devi caricare alcuni nei
registri (meglio avere un RISC, che con gli Intel e Intel-derivati hai
pochi registri). I dati li leggi per indirizzi crescenti o
decrescenti?
[1] almeno oggi, visto che è possibile l'esecuzione fuori ordine ed il
riordino delle istruzioni assembler, però ai tempi del Duff's
Device...
> In che maniera l'hai vista? Io iniziai nel 1992 in basic,
Nel 92 probabilmente ci arrivò il primo compilatore C++ sul BBS di
dipartimento (il software del nostro BBS era... Unix).
Negli anni precedenti vidi passare da Pascal a Modula 2 per migliorare
l'incapsulamento.
> venne poi Java (ovviamente non ho mai visto né ADA, né
> Smalltalk). All'inizio non ci capii nulla, la vedevo come
> un'inutile esercizio (perché pensare ad un oggetto Animale e un
> Oggetto CANE??? Ma che bestia sei???)
Infatti. Quando poi capii che "classe => tipo con metodi che
permettono di manipolare gli oggetti di quel tipo in modo determinato
(incapsulamento) e non alla selvaggia.
> Poi lessi il libro di Mr. Meyer, e il Meillir-Page-Jones. E da li
> (era il 2002) partì tutto il mio amore per questa OOP, fatta tutta
> di tubi e connettori.
>
> L'apice della goduria lo toccai ad un ciclo di seminari di
> dottorato del Dr. Meyer dove ci ha catechizzato sulla
> programmazione per contratto
Oggi oramai Java è abbastanza bravo da non fare perdere tempo se
invece di una invokevirtual se non hai variabili volatili. Altrimenti
evitare l'estremismo di usare le interfacce localmente...
> > Non è il linguaggio o la tecnica a permettere la manutenibilità o meno.
> > E se lo standard di qualità non prevede i puntatori non è colpa dei
> > puntatori.
>
> Certamente invece! Con i puntatori, come fai a fare analisi statica
> del codice?
Vieni a lavorare con me, vieni a lavorare con me. Che ti mostro come la OOP
NON ti salva.
> > Il problema nasce dalla cattiva organizzazione del lavoro e nell'uso di
> > personale non sufficientemente competente.
>
> No. Ci sono concetti di linguaggi error prone. E' anche vero che è
> una teoria datata, visto anche gli arrosti che fecero coi linguaggi
> di 4 livello.
È l'uomo a fare gli errori, è l'uomo che scrive il codice. Un
linguaggio è error prone se richiede all'uomo di essere migliore (più
attento, più disciplinato).
Ora cosa è veramente error prone? Accettare che lavorino le scimmie o
richiedere che la gente *sappia* fare il suo lavoro?
> > http://www.paulgraham.com/lisp.html
> >
>
> All'università ho fatto tanto lisp e tanto prolog.
Spesso mi obbligarono a fare una cosa, non mi dissero a cosa serviva e
la odiai. Poi mi resi conto che presentata in modo diverso e senza
l'obbligo molte cose le avrei guardate in modo diverso.
Quando sarebbe toccato a me fare LISP, il LISP ancora non ce lo
potevamo permettere. Quindi andarono avanti certi luoghi comuni...
Anni dopo, arrivarono le macchine che potevano supportare il vero
Emacs.
All'inizio la sua configurazione mi risultò strana. Poi mi ci abituai.
Anzi, cominciai a vedere un nuovo modo di pensare.
Senza contare l'illuminazione di vedere il sistema darti informazioni
sulla funzione +...
Quindi oggi l'affermazione del mio collega di studi (la cui stima va
come 1/t) che parlava felice di una applicazione LISP buttata via in
favore di una applicazione C++ mi fa solo pensare ad una applicazione
LISP scritta molto molto molto male.
--
/\ ___ Ubuntu: ancient
/___/\_|_|\_|__|___Gian Uberto Lauri_____ African word
//--\| | \| | Integralista GNUslamico meaning "I can
\/ coltivatore diretto di software not install
già sistemista a tempo (altrui) perso... Debian"
Warning: gnome-config-daemon considered more dangerous than GOTO
Maggiori informazioni sulla lista
flug