💾 Archived View for gem.ortie.org › docs › 005_lisp.gmi captured on 2023-07-10 at 13:37:06. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2023-03-20)
-=-=-=-=-=-=-
Lisp est un des premiers langages de programmation, apparu en 1958.
Il est toujours d'actualité, mais moins connu et utilisé que le C ou Java. Il a servi pour créer le langage ZIL (Zork Implementation Language), qui a servi pour la programmation des premiers jeux d'aventures textuels chez Infocom.
Comme pour Forth, il a ses adeptes, et un développement qui se poursuit jusqu'à maintenant, au travers de plusieurs dialectes : Common Lisp, Scheme, Racket...
Les diverses implémentations de Common Lisp ont le même défaut que quantité d'autres projets, à savoir la difficulté à interfacer facilement du son et du graphisme, les divers efforts dans ce sens se trouvant dans des projets externes et pas toujours bien maintenus.
Aussi, je me suis plutôt dirigé vers Racket, qui malgré son nom qui pourrait faire penser qu'il vient de chez Apple ou Microsoft, n'est pas une nouvelle tentative d'extorsion des GAFAM. Il contient un IDE performant (DrRacket) ainsi que des bibliothèques standard permettant de réaliser des images.
Beautiful Racket: an introduction to language-oriented programming using Racket
https://learnxinyminutes.com/docs/racket/
#lang slideshow (define circ01 (circle 120)) (define circ02 (circle 110)) (pin-over circ01 5 5 circ02)
#lang racket (require racket/draw) (require racket/gui) (define target (make-bitmap 50 50)) ; A 30x30 bitmap (define dc (new bitmap-dc% [bitmap target])) (make-object image-snip% target) (send dc set-brush "green" 'solid) (send dc set-pen "blue" 1 'solid) (send dc draw-rectangle 0 10 30 10) (send dc set-pen "red" 3 'solid) (send dc draw-line 0 0 30 30) (send dc draw-line 0 30 30 0)