Pourquoi LISP dans AutoCAD?

Ci-dessous la traduction en français, par votre serviteur, de cette page du livre de John Walker, fondateur d’Autodesk

Comme la version d’AutoCAD 2,1 arrivait, nous étions un peu méfiants au sujet d’utiliser Lisp comme notre langage d’application. C’était à l’apogée de la mode sur les systèmes experts, l’intelligence artificielle, et les machines Lisp, et bien que la publicité gratuite que nous gagnerions en choisissant le Lisp ne nous dérangeait pas, nous avions peur que ce qui était en fait un langage de macro très simple intégré dans AutoCAD soit perçu comme quelque chose exigeant une connaissance spécialisée des arcanes et ainsi effrayerait les développeurs d’application même, pour qui nous l’avons implémenté.

autocad-autolisp

En fait, quand nous avons livré AutoCAD 2.1, nous n’avons pas utilisé le mot « Lisp » du tout – nous l’appelions la « fonctionnalité de variables et d’expressions » . C’est seulement dans la version 2.18, dans lequel nous avons fourni l’ensemble des capacités fonctionnelles et itératif de Lisp, que nous introduisons le terme « Autolisp »

AutoCAD Applications Interface

Interface du langage Lisp Positionnement stratégique marketing par John Walker – 5 février, 1985

Lisp?!?! Pourquoi diable avez-vous choisi le langage le plus arcane, obscur, et désespérément ancré-dans-le-département-des-sciences-informatiques au monde comme langage de programmation AutoCAD?

Au cours des six prochains mois, chacun d’entre nous aura l’occasion de répondre à cette question. Il y a de très bonnes raisons pour lesquelles nous avons choisi Lisp comme le langage initial à attacher à AutoCAD: je vais essayer de les expliquer ici. Cependant, il y a un point important que nous ne voulons pas perdre de vue: l’interface intégrée Lisp que nous sommes résolus à offrir n’est que le premier d’une série de produits d’applications d’interface, permettant à AutoCAD d’être exploité par des programmes d’application écrits dans tous les langages d’application majeurs. Je prévois que des interfaces pour FORTRAN, Basic compilé, C, et Pascal seront disponibles au cours des 12 prochains mois. Ainsi, Lisp est le langage que nous vendons pour de petites applications – nous ne l’offrons pas ou ne le suggérerons pas pour la programmation de projets majeurs: qui seront traités par des interfaces dans d’autres langues, et qui permettront à un fournisseur de logiciels d’attacher leur programme pour AutoCAD dans sa langue maternelle.

Mais revenons à Lisp. Ce qui suit est ma réponse à « Pourquoi Lisp »

Lisp est le langage par excellence dans le domaine de l’intelligence artificielle, et l’a été pendant plus de deux décennies. Bon nombre des programmes les plus complexes jamais écrits ont été écrits en Lisp. Lisp est loin d’être un jouet ésotérique d’informaticiens: un système appelé NAVEX, entièrement écrit en Lisp, sera bientôt disponible pour que la navette spatiale roule sur la piste. Les systèmes experts mis en œuvre en Lisp seront un élément central de l’environnement de la Station spatiale et de ses systèmes de gestion de l’énergie.

Lisp est idéalement adapté à l’interaction non structurée qui caractérise le processus de conception. Contrairement aux langages de programmation tels que C et FORTRAN, qui obligent à organiser un problème entièrement avant de programmer, Lisp encourage l’exploration d’approches différentes pour un problème de façon interactive, exactement comme la CAO le permet à un concepteur.

Aucun autre langage majeur de programmation ne peut manipuler facilement les types d’objets que l’on travaille avec la CAO. Par opposition à la programmation numérique, la CAO travaille en permanence sur les collections d’objets hétérogènes de taille variable. Lisp excelle à cela.

Parce que l’application Lisp d’Autodesk est totalement interactive et fournit des mécanismes de débogage en ligne, Lisp est parmi les langages les plus faciles à maîtriser. Parce que la réponse à tous les changements sont immédiats, les programmes peuvent être testés aussi facilement qu’avec un interpréteur BASIC interactif.

Enfin, les raisons impérieuses qui font de Lisp la langue de choix pour les grosses applications forcent la conception d’ordinateurs optimisés pour Lisp. Des machines de Symbolics et Texas Instruments sont déjà sur le marché. Cette technologie sera cruciale pour les systèmes à haute performance de la fin des années 1980 et 1990. En lançant la CAO dans ce sens, Autodesk positionne vos applications pour tirer parti de cette évolution.

Et voilà!

Programmez-vous en AutoLISP?

  • Oui
  • Non
  • Vous pouvez répéter la question?
0 votant

Et si vous voulez vous familiariser avec l’AutoLISP rien de mieux que les conseils et le site de notre ami Didier:

Et ne manquez surtout pas sa vidéo destinée aux débutants:

Et lorsque vous aurez avancé après vos premiers pas de débutant ne manquez pas le site d’un expert en matière de programmation pour AutoCAD, Gilles:

https://gilecad.azurewebsites.net/Lisp.aspx