[Python] Turbopascal??

Enrico Franchi enrico.franchi a gmail.com
Lun 3 Gen 2011 15:59:56 CET




On 1/3/11 1:59 PM, "Giorgio Zoppi" <giorgio.zoppi a gmail.com> wrote:

> Sono d'accordo che e' un linguaggio molto complicato (ufficio complicazioni
> affari semplici) ma...guarda:
> 
> http://www.lextrait.com/Vincent/implementations.html

Non so... A naso mi sembra piu' una lista (arbitraria) di grossi software
scritti in C/C++. Ovvero, mi sembra che sia una cosa che si auto-sostenta.

Gia' frasi come 
"""
The difference between C and C++ is a bit artificial, as it is always
possible to argue that most of C code is C++ code, or conversely (as more
than a few people use C++ more or less like C). The approximation made in
this document tries to correspond to intuition.
"""

Mi fanno diventare dubbioso. La mia reazione se qualcuno mi dicesse una cosa
del genere sarebbe un improperio. La distinzione fra C e C++ *non* e'
artificiale. E non e' vero che codice C valido e' codice C++ valido. Non lo
e' *affatto*. Comunque...

Ribadisco... Sembra un "autoconvincersi". Elencare un bel numero di sistemi
operativi e di interpreti/macchine virtuali per esempio fa sorridere (nota,
Python non e' elencato manco fra le macchine virtuali, un dubbio su quanto
sia rappresentativa la lista viene?). Altro escluso illustre... PostgreSQL
(in C, gli porterebbe pure acqua al suo mulino). Veramente vogliamo prendere
sul serio uno che elenca MySQL e non Postgre? Si e' scordato Nginx,
LightHTTPD... Insomma. Per ogni categoria si e' scordato tanta di quella
roba che mi viene da chiedermi quale sia il punto.

Tra l'altro ha la strana tendenza a confondere "un pezzo in C++" con "tutto
in C++". Per esempio, per quanto ne so io, tutti gli strati superiori di
Firefox sono scritti in javascript + xml.

Non a caso:

% find . -name "*.js" -o -name "*.xml" -o -name "*.xul" | xargs cat | wc -l
1274362
% find . -name "*.cpp" -o -name "*.c" -o -name "*.h" -o -name "*.hxx" |
xargs cat | wc -l
4562279

Ora... Aggiungiamo due commenti. Primo teniamo conto di quanta funzionalita'
e' espressa in Javascript per linea di codice. E vediamo che il rapporto 1:4
dice gia' un'altra cosa. Poi facciamo conto che nel repository ci sono una
serie di librerie di base che non sono parte di firefox (bzip2) ma sono li
solo per comodita'. Tipo libjpeg, pezzi di etc etc etc cairo.


Poi "Google" viene messo come "C++". A me continua a risultare che in Google
utilizzino *3* linguaggi e che di fatto non sia chiaro che pezzo usa cosa.
Per facebook si sono scordati i pezzi in Python.

Sostiene che MacOS sia in buona parte scritto in C++ con una partecipazione
marginale di Objective-C. In realta' e' il contrario.

Poi voglio dire... Si e' scordato i vari Drupal, Joomla e praticamente tutta
la merda fatta in PHP. Insomma... Ricapitoliamo, mi sembra una lista
completamente arbitraria di progetti. Meta' di questi mi *aspetto* che siano
fatti in C/C++ per motivi di buon senso; ha tagliato arbitrariamente
software (pure in C/C++)... Forse non li conosce? Ha completamente scordato
una lunga lista di software di complessita' e dimensione paragonabile a
quelli inclusi (sono l'unico che trovi strano che sia incluso k3b e non
Emacs?), con speciale attenzione a dimenticare quelli *non* scritti in C++ e
in particolare quelli scritti in linguaggi dei quali finge di ignorare
l'esistenza. Nelle note si e' sbizzarrito con cose false o imprecise. E
infine, tende a confondere una parte di C++ con "tutto C++".

Mi sembra, insomma un nulla di fatto.




Maggiori informazioni sulla lista Python