A priori, j'aurais dit : C/GTK+, C++/gtkmm ou C++/WxWidgets/GTK++, mais étant donné les contraintes, ça semble ne pas convenir. Alors je propose FreePascal/GTK+.
Respect des contraintes :
Licence LGPL modifiée/GPL
Plus expressif que le C
Moins lourdingue que le C++
Gestion de la mémoire relativement simple
Typage statique fort
Quelques atouts supplémentaires :
- la courbe d'apprentissage est aisée par rapport à la plupart des autres langages cités ici (Java, Python, OCaml, Perl, C#, etc.).
- compatible avec Kylix/Delphi et Turbo Pascal (permet de capitaliser sur l'expérience de ces implémentations et sur du code déjà écrit pour elles)
- les performances des exécutables en termes de vitesse et d'occupation mémoire sont sensiblement identiques à des programmes écrits en C/C++ (voir http://dada.perl.it/shootout/craps_cpumem.html(...))
- supporte la programmation orientée objet, le paradigme étant plutôt bien intégré au langage
- est fourni avec un IDE dédié
- portable sur un très grand nombre de plates-formes et de processeurs
- c'est agréable à programmer (avis très personnel :)
# Re: Quel langage choisir.
Posté par Frédéric Lopez . En réponse au journal Quel langage choisir.. Évalué à 1.
http://www.freepascal.org/(...)
http://www.freepascal.org/packages/gtk.html(...)
http://gtk2forpascal.sourceforge.net/(...)
Voir aussi les bindings fpGTK fournis avec le compilateur.
Respect des contraintes :
Licence LGPL modifiée/GPL
Plus expressif que le C
Moins lourdingue que le C++
Gestion de la mémoire relativement simple
Typage statique fort
Quelques atouts supplémentaires :
- la courbe d'apprentissage est aisée par rapport à la plupart des autres langages cités ici (Java, Python, OCaml, Perl, C#, etc.).
- compatible avec Kylix/Delphi et Turbo Pascal (permet de capitaliser sur l'expérience de ces implémentations et sur du code déjà écrit pour elles)
- les performances des exécutables en termes de vitesse et d'occupation mémoire sont sensiblement identiques à des programmes écrits en C/C++ (voir http://dada.perl.it/shootout/craps_cpumem.html(...))
- supporte la programmation orientée objet, le paradigme étant plutôt bien intégré au langage
- est fourni avec un IDE dédié
- portable sur un très grand nombre de plates-formes et de processeurs
- c'est agréable à programmer (avis très personnel :)
Mes 0.02