La programmation est un hobby que je pratique de temps
à
autre et je conserve d'une petite carrière de
développeur
professionnel une certaine curiosité pour les langages de
programmation. Hors des usines à gaz
propriétaires et
souvent hors de prix, le salut existe, gratuitement, et même
carrément open-source pour certains. Point
d'exhaustivité
dans ce petit point de vue subjectif, juste mes
préférés.
Un langage qu'il faut vraiment découvrir. Imaginez un
langage
complet qui tienne largement sur une disquette et qui permette de
créer un clone de logiciel de courrier en 50 lignes, avec
une
interface graphique en plus. Ca existe et c'est Rebol. Avec lui le
réseau est juste une extension de votre pc et sa syntaxe pas
trop complexe permet des merveilles impensables avec d'autres kits de
développement. Disponible pour une quarantaine de plateformes !
220 Ko pour la version console et 600 Ko pour la version avec
bibliothèque graphique, un sacré tour de force.
Sur le
Rebol
Documentation Project vous
trouverez de la doc en français.
La maison
mère, in english mais c'est là que vous aurez la
dernière version de RebolView.
Au départ AutoIt était juste un langage de script
intéressant mais sa capacité à
créer des
interfaces graphiques et sa syntaxe très "basicienne" en ont
fait un langage à part entière. Ses
possibilités
de scritage de n'importe quelle application ou programme
installé sur votre machine est proprement
stupéfiante.
Une sorte de super "visual basic" (®) facile à mettre en
oeuvre. Cette petite merveille peut aussi vous préparer un
auto-executable (.exe) à partir de votre script. Pratique,
très pratique. C'est AutoIt qui a servi à écrire
Ani4Chaoscope et
CsviewExtractor.
C'est sans aucun doute mon couteau suisse dès que j'ai
quelquechose à programmer ou un algorithme à tester.

Le site principal.
Pour obtenir une vraie plateforme de développement
intégré RAD, n'oubliez pas
Scite4AutoIt.lui
aussi gratuit, c'est son complément indispensable pour le
transformer en "Visual Basic" (®) ou presque, en mieux pour un peu
plus de 7Mo seulement ;-)
Nouveau:
(21 mai 2006), AutoIt a servi à écrire
Ani4Chaoscope, un programme qui
permet de générer des animations avec Chaoscope.
Nouveau: (13 aout 2006): Sortie d'AutoIt version 3.2.0.1, avec plein de nouveautés !! Youpi :-)
Nouveau: (20 mai 2007): Sortie de la version 3.2.4.5, de plus en plus fort !!
Un langage qui commence à lorgner du coté du
grand
fère visual. Allez-y voir. Il n'en est encore qu'à la
version 0.16 mais c'est déjà très prometteur et
utilisable. DOS, Linux et Windows. Génère du code
compilé donc rapide.
Un ensemble de développement complet et performant qui
transforme votre source Basic en langage C et la compile avec un compilateur
gratuit (Pelles C par défaut livré avec l'installeur mais les principaux gratuits sont supportés).
Avec lui vous avez donc accès à du vrai compilé.
Disponible ici.
C'est ce pack qui a permis la réalisation de la nouvelle version
d'Ultimatrix encore en développement. 10 Mo de bonheur.
.
La devise de BCX: "La simplicité du Basic et la puissance du C".
Utilise la librairie Wxwidgets pour le GUI, entre autres. Interpréteur qui
permet de générer un autoexécutable.
Disponible ici.
Encore un bel ensemble de programmation, rapide et performant. Un forum
très actif. A essayer absolument! Langage
interprété mais permet de générer un
exécutable autonome.
Disponible ici.
Celui-là est un extra-terrestre. Pas vraiment un Basic, disons
plutôt un enfant terrible de la famille. Peut fonctionner en
interprété mais peut aussi générer du code
compilé, supporte aussi bien Windows que Linux, dispose de
quelques bibliothèques graphiques telles que wxWidgets et sa
communauté est à la fois large et comptétente. Si
vous êtes un curieux de la programmation une visite s'impose.
Disponible ici.
Basic alternative
compilers for windows and linux
Parce qu'il n'y a pas que les poids
lourds du marché. Une belle liste bien organisée
de
différents compilateurs basic ou assimilés, gratuits ou non.
Du coté du C et du C++
Après avoir vu ce qui ressemblait plus ou moins à du
Basic il est temps de regarder du coté de ces deux langages
phares que sont le C et le C++. En prenant un peu de temps et en lisant
quelques documentations ces deux langages sont accessibles, même
si je ne les conseillerais pas pour apprendre la programmation.
Commençons par le C:
Un petit rappel au passage, BCX est une bonne passerelle pour apprendre
le C l'air de rien, juste en lisant les sources C qu'il
génère. Vous programmez quelques lignes en BCX et vous
allez ensuite lire la source C générée, ce n'est
pas sans intérêt. C'est comme ça que vous prendrez
conscience que ce langage n'est pas si compliqué que la rumeur
le laisse entendre. Pas compliqué mais pointilleux, très
pointilleux même, vous voila prévenus, la rapidité
d'exécution et la puissance sont à ce prix.
Il existe pas mal de compilateurs C gratuits et même quelquefois
open-source, la très grande majorité des compilateurs C++
compileront d'ailleurs le C sans aucun problème. Voici une liste
non exhaustive des programmes qui contiennent des compilateurs gratuits
qui ne s'occupent que du C et pas du C++, sous Windows.
C'est le compilateur installé par défaut en version
allégée avec BCXDevSuitePro. En
téléchargeant la version complète vous avez
accès, en plus du compilateur, à quelques outils
bien pratiques tels qu'un éditeur de code, un déboggueur,
un éditeur d'images, un éditeur de registre, un
visualisateur de process, un éditeur de ressources et plein
d'autres utilitaires, bref, il est très complet. Un temps de
compilation raisonnable, des éxécutables minis et
une rapidité tout à fait respectable. Sans aucun doute
mon préféré dès qu'il s'agit d'un
compilateur exclusivement C, respecte une grande partie des derniers
standarts du langage. Pour un peu plus de 7Mo ça vaut
vraiment le coup de l'essayer.
LCC-WIN 32
Un peu vieillot mais toujours sur le coup, un compilateur toujours apprécié. 5 Mo
Les programmes qui embarquent des compilateurs C++ (compilent aussi le C):
Turbo C++ Explorer
La version gratuite de C++ Builder de chez Borland. Usine à gaz!
Existe en version française, aide comprise, c'est là son
principal intérêt. Demande l'installation préalable
d'un paquet de 235 Mo et l'installeur principal pèse 384 Mo.
C'est du lourd ;-)
Open Source Watcom / OpenWatcom C/C++ Compiler
Un GRAND compilateur C et C++, une multitude d'outils plus utiles les
uns que les autres, il est TRES complet! Normal, 62 Mo quand
même. Vous pouvez aussi lui adjoindre un compilateur Fortran pour
45 Mo de plus.
Bloodshed Dev-C++
Après des années de mises à jour suivies, il
semble qu'aujourd'hui Dev-C++ soit quasiment abandonné depuis
quelques mois. Il reste quand même très intéressant
et demeure une référence dans le monde des compilateurs
gratuits. 9 Mo
Code::Blocks IDE
Une solution de développement complète et extensible, 13 Mo avec le compilateur Mingw (GNU).
MinGW Developper Studio
Une pointure, complet, extensible, pratique, 60 Mo de puissance,
livré avec le compilateur Mingw (GNU). La dernière
version date de 2005
wx-Dev CPP
Dev C++ est semble t'il abandonné après des années
de bons et loyaux services. Un groupe de développeurs a eu
l'excellente idée de reprendre le flambeau en lui ajoutant une
extension qui permet de programmer avec la librairie graphique (et
autres) wxWidgets. Du coup vous voilà face à un outil de
développement RAD très performant. 44 Mo
Les langages de script
Ces langages sont au départ des
langages destinés à accomplir des tâches
répétitives telles que l'installation de programmes sur
des parcs de machines mais certains d'entre eux sont devenus de
véritables langages "à tout faire", disponibles pour
toutes les plateformes courantes.
Python
LE langage à tout faire par excellence. Excellent pour s'initier
à la programmation, puissant, largement utilisé et
disposant d'une vaste variété de bibliothèques,
tout ou presque peut-être réalisé en Python. La
version proposée par ActiveState est recommandée sous
Windows(®),
disponible ici.
Ruby
Avec lui TOUT est objet. Parti du Japon, sa renommée s'est
étendue à toute la planète en quelques
années. Séduisant par sa simplicité qui cache une
redoutable efficacité, il est aujourd'hui aux toutes
premières places derrière Python et dispose de presque
autant de bibliothèques spécifiques. Si vous aimez
uniquement la programmation orientée objet, Ruby saura à
coup sur vous séduire.
Lua
Langage embarqué très utilisé pour scripter des
jeux, vous l'avez déjà peut-être utilisé
sans le savoir. Une syntaxe simple, proche du Pascal, une taille
réduite et une rapidité suffisante en font un outil
agréable à utiliser. Depuis qu'il dispose de
bibliothèques en bon nombre, il est utilisable comme langage
à part entière.
Tcl/Tk
L'un des ancêtres des trois premiers en ce sens que c'est le
premier langage de script à avoir embarqué une
bibliothèque graphique qui est devenue le standard des trois
autres, Tk. Il n'a commencé à être supplanté
par Python et les autres qu'à l'apogée de la
programmation objet. Les dernières versions peuvent aujourd'hui
utiliser ce paradygme de programmation et il existe encore bon nombre
d'applications qui fonctionnent avec ce langage et une
communauté vaste et riche. Tcl/Tk n'est pas mort! Une seule
phrase pour le définir, avec lui "TOUT est commande". Sous
windows(®), la version proposée par ActiveState est
recommandée,
diponible ici.
Les inclassables ou presque.

Un
assembleur
virtuel
multiplateforme
et
facile,
impossible? N'en soyez pas si surs...
Voyez donc
Linoleum.
Sur le forum vous trouverez une
traduction en français du tutoriel. Attention, ce langage est addictif ;-)
HLA
High Level Assembly, assembleur de haut niveau, tout est dit. Pour
Windows (®) seulement mais le concept est intéressant,
nettement au dessus des macro-assembleurs conventionnels. La version 2
en gestation promet encore de belles surprises. Attention, pas vraiment
conseillé pour apprendre la programmation, ça reste quand
même de l'assembleur. Pour s'initier à l'assembleur sans
trop de prise de tête,
Linoleum est plus conseillé.

Entre
un langage de prog et un langage de maths, un dialecte avec des
noms, des adverbes et des verbes, voilà un langage
qui cache
une puissance incroyable. Impossible de définir
J,
il faut l'essayer pour comprendre.
Attention, prévoir quand même deux ou trois
aspirines ;-)

Vous
avez pris les aspirines? Vous voilà donc prèts
à
affronter
Squeak,
c'est du
smalltalk, tout est objet... et vice versa ;-). A la fois langage,
plateforme
de developpement et environnement, c'est une expérience
à tenter, seulement 12Mo. Déjà tellement complet
qu'il contient des utilitaires fonctionnels inclus dans la
distribution. Un CD peut aussi être
téléchargé avec un maximum de documentation sur
Smalltalk et Squeak.
Si le smalltalk vous tente toujours après cette prise de contact
vous trouverez des distributions gratuites très complètes:
VisualWorks (multi-plateformes) et
ObjectStudio (Win seulement) chez
Cincom Smalltalk, un CD complet!
Smalltalk/X chez
eXept Software, open-source multiplateforme, permet de développer des exécutables autonomes 50Mo.
Dolphin Smalltalk Community Edition chez
Object Arts. 18 Mo, l'idéal pour se familiariser avec Smalltalk sans devoir télécharger des centaines de Mo's.
ESUG CD: une compilation de plusieurs implémentations de Smalltalk et de la documentation à gogo.
DrScheme
Open-source, encore un langage intéressant, l'éditeur
propose aussi des jeux pour le cas où vous voudriez vous
détendre entre deux séances de codage. Le gros plus de
cette distribution c'est que le niveau du langage s'adapte à
votre connaissance de celui-ci. Simple pour les débutants, plus
complexe ensuite pour aller plus loin dans les détails. 13 Mo
seulement pour découvrir un nouveau monde.

J'arrète
là cette petite liste et vous laisse achever ce petit tour
par
ces quelques liens où d'autres langages vous attendent. Chaque
langage de programmation est une sorte d'oeuvre d'art en soi et comme
en toute matière artistique les goûts et les couleurs ne
se discutent pas. Il y en a pour toutes et tous, bonnes
découvertes. Pour obtenir plus d'informations sur ces langages,
n'importe quel moteur de recherche fera l'affaire.
http://www.thefreecountry.com/compilers/index.shtml
http://www.freeprogrammingresources.com/frcomplr.html
http://freebyte.com/programming/
http://www.programmersheaven.com/
http://www.idiom.com/free-compilers/