[MontelLUG] Fork e compilatori [Era] manifesto Linux Day

Diego panda84 a inwind.it
Lun 1 Nov 2010 12:02:00 CET


Il 31/10/2010 15:28, Davide Rondini ha scritto:
> Io penso che tutta la diatriba sia in sé insulsa. Penso che questo sia uno dei
> motivi per cui Microsoft e Apple non siano ancora fallite, e per cui il
> software libero continuerà a restare marginale ancora per un bel po'. Il
> concetto di fondo è superiore, ma se non c'è coordinamento sui progetti si
> finirà all'infinito a produrre centinaia di fork, migliaia di progetti che fanno
> la stessa cosa, e infinite discussioni su chi abbia scritto più righe di codice
> e quindi abbia più diritto a apparire per primo nel nome. La pluralità è
> sicuramente un vantaggio, ma fino a un certo punto, poi bisogna quagliare.

Penso che più che per la quantità di fork del software libero Microsoft 
ed Apple siano ancora qui perché nessuna grande azienda ha mai scommesso 
veramente su di esso nel settore consumer. Ora che ha cominciato a farlo 
Google (Chrome/Chromium, Android) sembrano tutti avere un po' più paura...

> Argh, un altro compilatore nooo... Perché non chiamarlo Yet Another C
> Compiler? Capisco l'esigenza di migliorare le prestazioni, di inserire feature
> nuove, ma non era meglio fare un branch sperimentale e testare nuove cose lì?

L'approccio è abbastanza diverso e più "moderno". Clang è solamente un 
frontend di LLVM, uno strumento che permette di fare cose che nessun 
fork di GCC avrebbe mai permesso:
http://www.phoronix.com/scan.php?page=news_item&px=ODY4Nw
http://www.phoronix.com/scan.php?page=news_item&px=ODcyOQ
http://www.phoronix.com/scan.php?page=article&item=gallium3d_llvmpipe&num=1
http://www.phoronix.com/scan.php?page=article&item=intel_glsl2_llvmpipe&num=1

> Un compilatore non è un player MP3, che si cambia dalla sera alla mattina, ci
> sono problemi di adattamento del codice, compatibilità con le applicazioni,
> con le librerie C... GCC funziona bene e pressoché ovunque (mentre questo se
> non capisco male, non è compatibile con Windows): perché farne un altro,
> disperdendo risore (i programmatori di compilatori mica si trovano al
> supermercato)?

Perché come ho scritto l'approccio è più moderno e "astratto". Alle 
volte per adattarsi a cambiamenti radicali dell'hardware (la 
computazione che si sposta sempre più dalle CPU alle GPU programmabili) 
è meglio riprogettare e riscrivere il software da zero, piuttosto che 
creare dei Frankenstein che non fanno bene né una cosa né un'altra.

> Capisco l'esigenza di Apple, ma adesso ci si troverà con Linux
> che va con un compilatore e BSD con un altro.

Se sono già riusciti a compilare una Debian fino a Xorg e farla girare 
già adesso può darsi che si troveranno distro Clang-compatibili facilmente.

L'eccesso di varianti crea casini, ma è altrettanto vero il contrario: 
il monopolio, la fossilizzazione e l'accettazione dello "status quo" 
possono essere altrettanto pericolosi per il futuro di un sistema 
dinamico come quello informatico.

Ciao,
Diego




More information about the montellug mailing list