[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [HS] Choix d'un langage interprété



>>>>> "Georges" == Georges Mariano <georges.mariano@inrets.fr> writes:

Serait-ce un troll que je vois poindre ?

    Georges> "Stéphane Del Pino" wrote:
    >>  >>>>> "Georges" == Georges Mariano <georges.mariano@inrets.fr> writes:
    >> 
    Georges> Que faut-il de plus pour s'y mettre ??
    >> Deux réponses à deux questions :

    >> - Efficacité des compilateurs ?
    Georges> :-) 0) nous parlions initialement des langages interprétés ! mais
    Georges> bon, je considère toutefois la remarque comme judicieuse parce
    Georges> que ... Ocaml soutient la comparaison à la fois au niveau
    Georges> interpréteur mais également au niveau compilateur !!
Oui, mais la liste non exhaustive des qualités que tu donnais à ocaml m'a fait
réagir, et puis puisqu'on est totalement hors sujet ...

    Georges> 1) d'autre part, cette même remarque n'a pas de sens (!!)
Dis-donc ! :-)

[snip]

    Georges> 	- efficacité du compilateur ??  vitesse à l'exécution, taille
    Georges> du code obtenu ??  comment répondre...  comparons bison/flex et
    Georges> ocamllex/ocamlyacc, qui réalisent des traitements semblables ?
    Georges> bison 75ko ocamlyacc 46ko flex 133ko ocamllex 86ko mais bof, ça
    Georges> veut pas dire grand chose...
*A priori* de très loin, ça voudrait dire que ces codes ocaml sont moins
efficaces que leur équivalents C : un exécutable plus court c'est moins
d'inlining, de déroulement de boucles, ... (Je répète : *à priori*
[compilation avec les symboles debug, ...] ).

    Georges> Pour quelqu'un travaillant dans un laboratoire d'analyse
    Georges> numérique ;-), voici quelques pointeurs intéressants :
    Georges> http://www.azstarnet.com/~dmcclain/LanguageStudy.html
Ben c'est vraiment dommage de comparer ces langages en oubliant de parler des
C++ template ... Surtout si on compare ensuite les performances des différents
exécutables.

    Georges> http://www.cis.upenn.edu/~sumii/icfp/
Impressionnant, mais je pense que c'est avant tout la qualité des développeurs
et leur maîtrise du sujet qui permet d'atteindre un tel niveau.

    >> - Qu'en est-il de la Meta-programmation ?
    Georges> euh, c'est quoi la méta-programmation ?? quel genre de problème
    Georges> ??
C'est écrire des programmes génériques comme ce qui est fait dans la Standard
C++ Library par exemple. Tu peux programmer un algorithme de tri sans te
préoccuper du type des objets triés. En C++, ceci est mis en oeuvre par
l'utilisation de template.

L'association template/objet conduit à des techniques très puissantes qui
permettent d'obtenir des performances équivalentes à du Fortran 77 en ayant
une expressivité équivalente à celle d'un matlab ! (Chose que ne permet pas
Fortran 9x).

voir http://www.extreme.indiana.edu/~tveldhui/papers/techniques/
[ attention c'est pas du C++ pour les grand-mères ;-) ]

    Georges> PS : Je ne suis pas un gourou OCaml, loin de là, je dis juste que
    Georges> C/Perl/Python/Java ne traduisent qu'une culture <<minimale(au
    Georges> sens dénominateur commun)/immédiate>> et donc loin d'être
    Georges> exhaustive...
Oui, mais comme tu l'as souligné je suis numéricien et étant membre d'une
communauté assez restreinte, les choix en matière de langage à l'heure
actuelle ne sont pas très nombreux :
  - Fortran77/90/95
  - C/C++
L'*un* des arguments en faveur du C++ est que c'est un langage *très* utilisé
en dehors du calcul scientifique => compilateurs libres, plus optimisés[1],
corrections de bugs plus rapides, ...

Voilà donc pourquoi je te posais ces questions ...

Stef.

Footnotes: 
[1]  on bénéficie des améliorations apportés à une grande part de la
communauté informatique. Ce qui n'est vraiment pas le cas pour les
langages comme fortran9x.


-- 
Laboratoire d'Analyse Numérique - Université Pierre et Marie Curie
Tel: (33)144277170,   Fax: (33)144277200,   Mobile: (33)662004924.
-+-
http://www.freefem.org



Reply to: