Revisite du langage LISP,... en Pascal !, Le retrocomputing, c'est aussi le code ! |
Bienvenue invité ( Connexion | Inscription )
Revisite du langage LISP,... en Pascal !, Le retrocomputing, c'est aussi le code ! |
8 Jul 2021, 10:35
Message
#1
|
|
Macbidouilleur d'Or ! Groupe : Membres Messages : 2 486 Inscrit : 29 Aug 2002 Membre no 3 340 |
Il y a longtemps, dans une lointaine galaxie... Enfin, presque !
Vers la fin des années 80, bien avant que cela ne devienne une réalité économiquement abordable, des passionnés ont imaginé que les bidouilleurs pourraient fabriquer leur propres robots. Et à cette époque, une revue fut lancée sur cette thématique. "Micros & Robots" a connu un succès limité, malgré un contenu très à la pointe, voire même un peu élitiste. Et seulement 16 numéros ont été publiés. C'est à partir du numéro 15, l'avant-dernier que démarre une série de trois articles sur le langage LISP. Trois, 15, 16 et... ? C'est en effet la revue-mère du petit nouveau, l'institution Radio-Plan qui date des années 30, qui a publié le troisième volet. Pourquoi s'intéresser à une telle antiquité ? - Comme pour toute antiquité, la comprendre, et admirer le résultat en face de la pauvreté des moyens disponibles pour sa création. - Pour comprendre comment on a construit ce langage, l'un des tout premiers, avec FORTRAN, autour de 1955. - Noter de la version de l'article ne sait pas compter, j'ai donc décidé d'ajouter les 4 opérations arithmétiques, en lisant la littérature sur le sujet, le SICP, et j'ai été surpris que c'était plus facile que j'imaginais. Ma reconstruction du programme en Pascal: https://github.com/jaypeeds/nanolisp Petite capture d'écran du résultat: Code jaypee@MacMini2018JP nanolisp % ./NanoLisp NANO-LISP - (C)JM HUSSON (1985), JPDS (2021) (LOAD 'Exemples/test-fact-rec.nlsp) FACT NIL T (FACT 10) 3628800 (SETQ PI 3.1415926535) 3.1415926535 (DE perimetre-du-cercle(RAYON) (* 2 PI RAYON)) perimetre-du-cercle (perimetre-du-cercle 5.0) 3.1415926535000001E+001 (QUIT) NIL Le fichier chargé contient une définition de fonction factorielle récursive que j'appelle dans la console: (DE FACT(N) (COND ((EQ N 0) 1) (T (* N (FACT (- N 1)))))) Ce n'est pas un outil industriel, il a plein de défaut, mais c'est juste cool et fun ! et c'est déjà beaucoup ! @+JP Ce message a été modifié par Jaypee - 8 Jul 2021, 10:36. |
|
|
5 Jun 2022, 08:54
Message
#2
|
|
Macbidouilleur d'Or ! Groupe : Membres Messages : 2 486 Inscrit : 29 Aug 2002 Membre no 3 340 |
Vu par hasard sur YouTube...
Casio, fin des années 80, a créé un micro de poche qui avait LISP comme langage de base ! https://www.youtube.com/watch?v=H-yuZ2pejGU Avatar moderne, basé sur un micro-contrôleur actuel. http://www.ulisp.com/show?2KZH JP Ce message a été modifié par Jaypee - 5 Jun 2022, 13:21. |
|
|
Nous sommes le : 8th June 2024 - 08:19 |