[Pluto-help] programmazione

Gianluca Montecchi gianluca a pluto.linux.it
Dom 21 Apr 2002 22:05:51 CEST


Il ven, 2002-04-19 alle 17:23, Antonio Cuni ha scritto:
> Il 14:55, giovedė 18 aprile 2002, Gianluca Montecchi ha scritto:
> > Ok. Sono d'accordo. Il mio era solo un esempio. Se vai a leggere il
> > perche' il kernel non e' sviluppati in C++, c'e' una discussione molto
> > piu' approfondita della questione (e soprattutto fatta da persone piu'
> > esperte)
> 
> hai qualche link al riguardo?

Dovrebbe essere in qualche FAQ del kernel.

> cmq dalla tua frase non capisco se ti riferisci ad un kernel in particolare 
> (linux?) o in generale a tutti i kernel:

Li parla di Linux, ma credo che si possa applicare anche ad altri
kernel.

> se ti riferisci al kernel di linux le ragioni per cui e` stato sviluppate in 
> C e non in C++ possono essere non tutte strettamente tecniche; ad esempio (in 
> ordine sparso):
> 1) ai tempi del primo kernel di linux il C++ era ancora pre-standard e 
> assolutamente poco portabile

Vero. 

> 2) sempre a quei tempi i compilatori non erano ottimizzanti come adesso e 
> sarebbe stata una pazzia sviluppare software di sistema in C++

Guarda che non lo sono nemmeno ora. O almeno, non lo sono rispetto alla
controparte C

> 3) puo` darsi che Linus ai tempi non conoscesse il C++
> 4) puo` darsi che Linus non avesse a disposizione un compilatore C++
> [nota importante: quando dico "usare il C++" *non* intendo "programmare OO": 
> si puo` benissimo usare il C++ disgiuntamente dall'OO]
> [altra nota: ovviamente tutto questo IMHO: ci possono benissimo essere 
> ragioni strettamente tecniche di cui non sono a conoscenza]

Non mi ricordo bene tutto il discorso, ma non credo che questi motivi
fossero nel discorso. C'era il fatto che c'erano/ci sono pių persone che
conoscono il C rispetto al C++.

> Se invece ti riferivi a tutti i kernel in generale allora ti sbagli: BeOS e` 
> stato scritto interamente in C++.

Lo so. Ma non credo che sia una regola precisa. Mi spiego, probabilmente
scrivere un kernel in C++ e' possibile come lo si puo' fare in C.
Evidentemente ogni approccio ha i suoi vantaggi e i suoi svantaggi.

bye

Gianluca

-- 
We are the opensource. Existence as you know it is over. We will add
your proprietary features and technological distinctiveness to own
opensource project. Resistence is futile. Windows is closed.





More information about the pluto-help mailing list