List Protocol, communément appelé Lisp

Par abaudouinvegas, 2 février, 2024
Lisp Logo

Introduction

Salut tout le monde,

Je m'appelle Alexandre et come la plus part d'entre vous, je suis un étudiant en informatique en fin de technique. Je suis passionné par la musique, ayant fait 12 ans de violon, et par l'informatique, cherchant constamment à acquérir de nouvelles compétences. 

Lisp

Ceux qui me connaissent savent que depuis un certain temps, je me suis lancé dans l'univers d'Emacs suite à l'éloge qu'un ancien élève en faisait. En raison de cette transition, j'ai passé quelques temps à configurer Emacs afin qu'il subvienne à mes besoins de programmation, et éventuellement de planification. La configuration sur emacs se fait par des fichiers ayant comme extension .el, qui réfère à Elisp. Les plus observateurs parmis vous auront remarqué que ce n'est pas tout à fait le sujet que j'ai mis comme titre, bien que ce soit très similaire. En effet, Elisp est un dialecte de Lisp, une famille de languages développée il y a plus de 40 ans à l'institue de technologies du Massashouchette? Matchasusetts? Bon, le MIT. Dans un contexte de veille technologique, je souhaite vous introduire à une vieille technologie, puisque malgré son âge, elle semble toujours aussi vivante qu'autrefois.

Exemple

Avant de vous quitter,  je souhaite vous démontrer rapidement des exemples de syntaxe Lisp, afin de vous donner une idée sur comment les programmeurs d'antan codaient.

(defun triple (X)  

"Compute three times X."  ; Inline comments can  

(* 3 X))                  ; be placed here. 

Ce code tiré du tutoriel de l'université Simon Frasier démontre une fonction basique en lisp.

Décorticons la syntaxe; tout d'abord, les fonctions sont définies dans des parenthèses. Cela diffère des langages modernes ou l'on voit une syntaxe ressemblant à 

fun triple(x):Int

Lisp est typé dynamiquement, comme on le verrait en Python ou Javascript, ce qui fait qu'il n'est pas nécessaire de définir les types d'entrées. Vous remarquerez aussi que la variable de retour n'est pas définie explicitement avec un return  . Lisp retourne automatiquement le résultat de la dernière expression à l'intérieur de la fonction. Dans ce cas, c'est (* 3 X). Il y a évidemment beaucoup de choses à dire sur ce que plusieurs considèrent comme étant le 2e langage de programmation, mais cela devra attendre à ma prochaine entrée.

Mot de fin

Merci de m'avoir accompagné dans cette courte introduction de Lisp, et j'espère avoir piqué votre intérêt. 

À la prochaine!

Commentaires1

mali

il y a 1 an

Très beau travail détaillé! Nous donner des exemples du code aide vraiment à bien peinturer l'image de ce que tu essaies de nous montrer!