(Courriels de diversion: <formaliseront@attachants-immisceriez.com> <cessibles@engraisses-provisionnes.com> <affaisserent@empaquetiez-barricada.com> <trepanent@reglementaire-langee.com> <communierez@manipulez-interdirais.com> <trafiquera@galvanisaient-trublions.com> <entrouvririons@transcodees-edifie.com> <encombres@clarte-tenaillee.com> <gendarmions@enterra-enchaînerai.com> <valeur@obligerai-developperent.com> )


On Wed, 2003-04-23 at 11:15, jdd wrote:
> Michel Rodriguez wrote:
> 
> > g++, pas gc++ (en tout cas sur ma machine).
> 
> g++ ou mieux gcc, sans doute
> 
> > Quels sont les langages qui passent par une traduction en C/C++? A ce
> > que je sache la plupart des langages de script ont leur propre
> > interpreteur: Perl, Python, Ruby, Java...  
> 
> je ne sais pas, mais chaque fois que j'ai compilé du source (et c'est 
> souvent), gcc ou g++ étaient exigés.

Ben oui, c'est parce que le dit source est ecrit directmement en C (gcc)
ou C++ (g++), pas dans un langage qui serait ensuite transforme en l'un
ou l'autre.

> si on veut approfondir, la notion de compilateur/interpréteur est très 
> complexe car il y a des interpréteurs purs (?), des semi-compilateurs, 
> des cross compilateurs... et des ovnis comme forth que je ne saurais pas 
> vraiment classer.

Des interpreteurs purs il n'y en a plus beaucoup, la plupart des
langages de script font une premiere passe qui compile le source (en
memoire), puis l'executent, c'est le cas de Perl, Python, Ruby,
probablement PHP). De plus une fois le code ecrit, tu peux avoir le
choix de quoi en faire: le compilateur perl ne marche pas vraiment, mais
si tu fais du Python tu peux soit l'executer directement avec Python,
soit utiliser JPython qui (si j'ai bieng suivi) "compile" le code en
bytecode Java, qui plus tard est execute (interprete et execute en fait)
par une JVM (et au passage tu peux utiliser des librairies Java depuis
le Python). Lisp a aussi des interpreteurs et des compilateurs (ceci dit
je pense que de nos jours il reste surtout des compilos). Mais bon, en
premiere approximation on a d'un cote les langages compiles, C et C++,
et de l'autre les langages interpretes (pour une definition fausse mais
qui parle aux utilisateurs d'interprete), Perl, Python, Ruby, PHP.
Suivant qu'on est pro ou anti Java on le classera dans l'une ou l'autre
des categories: le code Java est compile en bytecode mais le bytecode
est interprete par la JVM.

> au delà du compilateur lui-même, il y a aussi celui des librairies, j'ai 
> souvenir (en un temps ou linux n'existait pas :-) avoir eu des problèmes 
> pour lier des librairies pascal avec du C (je ne sais plus trop si 
> c'était un problème indien ou autre chose du même genre)

Ton paragraphe initial, il se place dans quel contexte? Il fait partie
d'un article, d'un cours? Dont le sujet est quoi? Et que est son but? Ca
nous permettra d'avoir une meilleure idee de ou couper dans les
explications (sinon on peut attaquer aussi les problemes des differentes
versions de gcc et de libc).

-- 
Michel Rodriguez <mirod@xmltwig.com>
--------------------------------------------------------------------
Les listes de diffusion occultes: <URL:http://www.CULTe.org/listes/>