Les bonnes astuces du langage ne sont juste que cela.

Carl Sassenrath, CTO REBOL Technologies 2-May-2006 20:28 GMT Article #0018

REBOL est un langage pour les personnes créatives. A cause de cela, il existe une richesse infinie d'astuces pour le langage et de possibilités que chacun peut inventer — spécialement dans un langage flexible comme REBOL. Certaines de ces astuces sont utiles, beaucoup ne le sont pas.

Malheureusement, après avoir inventé une amélioration au langage, la première chose que beaucoup de développeurs veulent est de la voir ajouter au langage. Mais est-ce vraiment judicieux ? est-ce que le langage est juste un "civet" de petites caractéristiques ?

Pas vraiment. Un langage doit être plus grand que cela. C'est une manière de penser - un moyen de faire correspondre des actions et de la logique, pas une collection de petits morceaux collés ensemble.

Maitenant, il y a un bon nombre de logiques très banales, comme un boucle while, et il y a encore plus de logiques rares. Je suis certain que vous avez vos préférées. Le probléme est de décider quand une logique, une action, ou une fonction devrait être une part officielle du langage ? Ce processus doit être pris en compte sérieusement. Il y a des douzaines de langages "surgonflés" qui possèdent des milliers de fonctions et de caractéristiques, qui sont très peu utilisées.

C'est une affaire pratique, pas une affaire académique ou de conception. Ce n'est pas "peut-on ajouter une caractéristique ?", c'est "doit-on ajouter cette caractéristique ?". Si la caractéristique est utilisée par un programmeur une fois dans l'année, est-ce que cela a de la valeur de l'ajouter ? Si la caractéristique est vague à comprendre ou difficile à utiliser, doit-elle faire partie de nos standards ?

J'ai dit "Non". Laissons cela en dehors ou faisons-en un package particulier ou un module de composant additionnel. Je préfére que REBOL demeure compact et léger. (Et, je serais le premier à admettre que RT est souvent coupable de ne pas respecter cette régle... des choses seront supprimées dans REBOL 3.0.)

Bien sûr, que rien ne vous arrête d'utiliser votre propre package ou extension du langage. Et si vous trouvez des douzaines de programmeurs qui utilisent cette caractéristique, alors il sera probablement temps de songer à l'ajouter. Un bon exemple est la package Include de Ladislav. Beaucoup de personnes l'utilise, et encore plus l'utiliseraient si il était inclus dans REBOL (donc, oui, il le sera.)

S'il vous plaît, ne m'en voulez pas. Je n'ai pas dit d'arrêter d'inventer de nouvelles extensions au langage, et je n'ai pas dit d'arrêter de suggérer leur ajout dans REBOL. Ce que je dis, c'est de mesurer les mérites de chaque extension.

Trions les codes les plus utilisés en les publiant dans la communauté REBOL et en regardant s'ils deviennent populaires. Puis, si vous avez une foule de gens qui les utilisent, venez cogner à ma porte et mettez-moi au courant. Je garantis que je vous écouterais avec interêt.

(Traduction : Philippe Le Goff)