Post by Roberto MontaruliIo invece sto parlando della stessa funzionalita' operativa, medesima,
identica. Stesso contesto.
Sto parlando della programmazione in ambito client-server su server IIS,
dove potendo utilizzare indifferentemente ASP o JSP, nonostante sia
immensamente piu' pratico, comodo, veloce, sicuro, utilizzare JSP,
l'azienda impone ASP (e qui tralascio volutamente di esternare il mio
parere in proposito per evitare la censura).
Ti confesso che tutta sta roba mi interessa poco. Non lavoro con
tecnologie MS e basta.
Post by Roberto MontaruliDi fatto, almeno nella mia piccola personale esperienza, quando si
tratta di scrivere grossi blocchi di codice elaborativo (quindi non
chiamate alla pappa pronta, ma assegnazione di variabili, cicli, salti
condizionati), tutti i linguaggi si equivalgono, chi piu' chi meno.
Si, no, dipende. Per esempio gestire le stringhe in C è oggettivamente
più 'complesso' che in Python. In effetti anche i cicli in qualche modo
non sono equivalenti (come 'funzionalità, si, non come 'scrittura').
In C hai in pratica iterazione su una variabile scalare, su un puntatore
(che pure è in effetti una variabile scalare, anche se non a livello
semantico) oppure una 'catena' di puntatori (penso a grafi, alberi,
liste).
I for di Python sono diversi e normalmente la 'logica' di iterazione
viene buttata dentro l'oggetto, non è 'esplicita' nel ciclo. Nel ciclo
sai solo che ti arriva il 'prossimo' per qualche valore di prossimo
dipendente da quello con cui stai operando.
In Ruby addirittura non hai uno 'statement' ciclo, ma tipicamente
'passi' un blocco *dentro* l'oggetto.
Haskell non ha manco i cicli, e te la streghi con funzioni ausiliarie e
ricorsione (e la cosa è pure abbastanza comoda, a seconda di quello che
fai... io lo ho usato per manipolazione di alberi di sintassi astratta,
macchine virtuali, etc etc etc). Prolog come sopra. Non hai i cicli.
Non solo, in Haskell e Prolog non 'assegni' alle variabili.
Insomma, ribadisco, finchè stai con C, Pascall (che pure non mi
dispiace) e Basic[0] la strutturazione del codice è simile e la
'comodità' è altra.
Il vecchio Pascal mancava di operatori cortocircuitati, per dire, la
qual cosa è comodissima. Basic vuole dire tutto e nulla (ultimamente
hanno fatto anche dei Basic quasi decorosi, fuori da MS).
Esattamente come si può paragonare C++ e Java (e io preferisco il
primo).
Post by Roberto MontaruliE' proprio nelle piccole cose, nella gestione un po' piu' raffinata dei
tipi di dati, nella scansione di liste custom, nella gestione dei files,
che il C (e linguaggi similari) gode di quei piccoli vantaggi che me lo
fanno preferire ai vari linguaggi Basic-like.
Ma non ho alcun dubbio e sono su tutta la linea. Tempo fa volevo
scrivere un piccolo interprete logo per fare un programmino per bambini.
Volevo vedere come si faceva in RealBasic (uno dei Basic 'carini'),
principalmente perchè me ne parlano tutti bene e volevo provarlo pure
io.
Solo per scrivere il tokenizer ho dato nuovi significati al concetto di
bestemmiare. Cioè in pratica il pezzo più stronzo in assoluto era già un
dito in un occhio: ma mica per il fatto che mi devo gestire 'a mano'
l'automa degli stati (la mia è quasi una scelta 'volontaria' in questo
senso, probabilmente lo farò anche se userò C, alla fine, cosa di cui
comunque dubito, vedo ben candidato Haskell, se solo trovo librerie
grafiche con cui sia comodo interfacciarlo -- la tartarughina non
perdona).
In pratica una stringa *non* è una lista di caratteri. E fin qui va
bene: nemmeno in Python lo è. Nel senso che iterando su una stringa ho
stringhette di un carattere. Tuttavia suddetta iterazione in Python è
piuttosto agevole, e il fatto che dal punto di vista dell'object model
quelle siano str e non caratteri non è particolarmente rilevante, visto
che si comportano come fossero caratteri, vuoi per il confronto, per la
conversione ad ascii etc etc etc. In RealBasic *no*. E RealBasic non è
in se e per se malaccio, dopo tutto ha praticamente l'object model di
Java 1.4 'vero' (non alla VB). Beh, non completo, non hai le classi
anonime, per dire. Mi pare.
Post by Roberto MontaruliDiamine, il Python non e' un sostituto o una alternativa al C, il Python
e' altro.
Il Python me lo puoi paragonare al Perl, non al C.
Beh, io non lo paragonerei nemmeno al Perl. In Python riesci a gestire
progetti di dimensione arbitraria senza grossi problemi di
strutturazione etc. Perl non è altrettanto comodo, IMHO.
Comunque si, fondamentalmente quando uno usa C 'dove va usato', li non
ci userebbe Python. Tuttavia Python ha, per dire, una copertura
praticamente totale degli usi frequenti di Java, oltre che altri ancora.
E ha anche una certa sovrapposizione con C++, quando questo non viene
usato negli 'usi da C'.
Post by Roberto MontaruliDipende sempre dal contesto.
Certo. Ma addirittura tu mi avevi chiesto *un* caso in cui fosse più
produttivo, solo che dai tuoi esempio io avevo nasato che tu pensavi a
Basic, mentre io Basic non me lo stavo cagando e pensavo a linguaggi di
ben altro tenore.
Post by Roberto MontaruliA me e' capitato di avere a che fare con un circuito dalle
caratteristiche molto particolari: disponevo di 256 byte (ho detto byte)
di ram, nei quali dovevo farci stare stack e variabili.
Non c'era alterntativa all'ASM, perche' il compilatore C di quel
processore non permetteva una gestione della memoria cosi' raffinata.
Non ho dubbi eh.
Post by Roberto MontaruliSolo il basic e' rimasto indietro di oltre 20 anni con quella
fetentissima funzione MID, e l'ASP dietro a ruota.
Vero.
--
blog: http://www.akropolix.net/rik0/blogs | Uccidete i filosofi,
site: http://www.akropolix.net/rik0/ | tenetevi riso e
forum: http://www.akropolix.net/forum/ | bacchette per voi.