C'est trop bieng le Lisp
Surtout quand on s'essaie à Python, avec leurs pas-lambda moins bonnes qu'en C++, et leur syntaxe objet illisible.
Putain mais CLOS
C'est trop bieng le Lisp
Surtout quand on s'essaie à Python, avec leurs pas-lambda moins bonnes qu'en C++, et leur syntaxe objet illisible.
Putain mais CLOS
Bah c'est discutable, avec la présence de Clojure sur la JVM (et la CLR), Racket (anciennement PLT scheme) je vois pas bien ce qui pousserait une équipe à commencer un projet en common-lisp.
Après si c'est pour un usage "récréatif" personnel (comme la drogue ), okay, je fais moi-même mumuse avec un peu tout ce qui traîne.
https://clojure.org/
Je ne connaissais Clojeur que de nom, mais en vrai ça a l'air pas mal du tout.
Clojure, si on bosse sur une jvm c'est bien.
Racket, je le trouve encore un peu jeune. Surtout si on regarde les librairies. Et puis je préfère nettement les lisp-2.
Rien ne me choque moi, je suis un scientifique ! - I. Jones
Racket 1994 quand même. Soit plus vieux que javascript...bon ok il n'a pas eu la même adoption
Clojure tourne sur la CLR (Microsoft .NET) mais assez difficile d'avoir des retours, j'ai l'impression qu'en pratique il est en effet utilisé à 99% sur la JVM.
Les libs de Racket sont souvent un peu non-finies, l'idée est bonne mais l'implémentation est incomplète pour une réelle utilisation. On trouve trop de preuve de concept d'académiques.
C'est ce sens de "jeune" que je voulait écrire.
Rien ne me choque moi, je suis un scientifique ! - I. Jones
Ce que je comprends pas, c'est toutes ces déclinaisons de langages existant (Clojure par exemple qui ressemble étrangement/fortement à LISP / SCHEME).
C'est juste histoire de dire qu'on a inventé quelque chose de nouveau ?
J'ai un peu de mal avec ce concept de nouveau langage tous les 4 matins. ..
Attention, ce n'est pas parce que c'est des langages avec des parenthèses qu'ils sont identiques.
Sinon, java, C, C++, et tout le toutim c'est également du pareil au même.
Clojure, Scheme et Common Lisp sont des Lisp. Ils partagent le même ancêtre.
Common Lisp est le plus ancien et le plus abouti à mon sens, il permet d'obtenir des exécutable très rapides. Il permet également le remplacement de partie de codes compilés alors que le programme tourne (c'est moins utile maintenant, mais c'est bô).
Scheme est à l'origine une variante essentiellement académique, privilégiant la prog fonctionnelle.
Clojure est le plus récent, mais ne tourne quasiment que sur une jvm.
Rien ne me choque moi, je suis un scientifique ! - I. Jones
J'ai ravivé de bons souvenirs semble-t-il
Rien ne me choque moi, je suis un scientifique ! - I. Jones
souvenirs J'étais à un congrès sur la normalisation de Lisp Il y avait Mc Carthy
Common list n'est sans doute pas le plus ancien, en tous cas ce n'était pas le plus pur mais sans doute celui qui a le plus évolué.
- - - Mise à jour - - -
Dans mes souvenir c'est bien fonctionnel comme langage APL, mais avec une forte orientation vectorielle et une syntaxe... euh.... sur le coup t'y crois pas.
Raaaah CommonLISP, CLOS et le meta object protocol Que de souvenirs... J'ai aussi adore OCaml, le typage c'est quand meme bien. Ca fait plus de 25 ans, je me sens tout melancolique d'un coup
Moi qui pensais que j'allais devoir croiser le fer pour défendre le Lisp, ça donne tu baume au cœur.
Rien ne me choque moi, je suis un scientifique ! - I. Jones
Sans oublier le processeur LISP de Guy Steele, projet d'étudiant dans le cours de Lynn Conway au MIT en 78. (À l'époque, les experts bien renseignés dans l'industrie considéraient qu'un seul projet comme ça demanderait plusieurs années par une équipe de spécialistes. À la fin du semestre les étudiants avaient fait une douzaine de projets sur 2 chips, dont la plupart marchaient quasiment du premier coup.)
Le processeur est la moitié gauche sur la photo :
À gauche l'évaluateur, à droite le garbage collector, avec leurs microcodes respectifs en bas. Ça change des RISC des années 80.
D'autres polaroids jaunis ici : http://ai.eecs.umich.edu/people/conw...tml#ClassPhoto
Perso le LISP ça a été un cauchemar pour moi. Je me rappel du TP 'les grands entiers' en LISP à la fac et je n'arrivais à rien.
Pourtant j'avais appris à programmer en RPN sur la HP48 (sorte de LISP inversé), j'ai rapidement intégré des éléments pseudo-fonctionnel dans mon code Java à l'aide de petites interfaces et de classes anonymes et j'ai accueilli avec joie et soulagement Scala, Groovy, Kotlin et Java8.
Mais le Lisp (et Clojure) non, je n'y arrive pas. Mentalement je bloque complètement !
Par contre la photo du proc LISP est juste fascinante !
non Et je m'étais fais la même réflexion ! Mais ça ne m'empêche pas d'aimer la prog fonctionnel quand elle est accessible. Et c'est aussi pour ça que j'aime beaucoup Kotlin (comparé à Scala par ex.) car il est orienté ingénieur et pas mathématicien / computer scientist !
Purée ook4mi, t'as de ces quotes
J'ai bien aimé OCaml moi. J'aurais bien voulu me faire un vrai projet au calme, mais j'ai dû me contenter de quelques TDs
Merci du partage et de l'anecdote
Tu as probablement eu un cours de Scheme car Common Lisp est sacrément pragmatique quand même. C'est ça que j'aime bien, il est loin d'imposer la prog fonctionnelle. On fait du fonctionnel si on a envie d'en faire. Quand on est bien. Paisibles. À la fraiche, décontractés des doigts et on codera quand on aura envie de coder.
Bref je m'égare. En tout cas il est clairement fait pour les ingénieurs et pas pour les académiques qui veulent faire des preuves de concept.
Rien ne me choque moi, je suis un scientifique ! - I. Jones
C'était bien du Lisp nature. Et pour moi c'est l'anagramme de slip...
Sleeping all day, sitting up all night
Poncing fags that's all right
We're on the dole and we're proud of it
We're ready for 5 More Years
mouais, mais bon d'après wikipedia:
Donc c'est sûrement plus accessible que certains autres langages purement universitaire et matheux, mais on est quand même loin d'un langage type PHP/Java/C# qui se veut accessible pour les 'cols bleus' de l'informatique.Lisp was originally created as a practical mathematical notation for computer programs
On va dire qu'il est mathématiquement pragmatique alorsEnvoyé par James Gosling
Et sinon: http://wiki.c2.com/?WhyWeHateLisp et ensuite vous pouvez vous perdre sur ce site et y errer à tout jamais
Bon ok, tu n'as pas tord.
En passant, Racket devrait bientôt changer de moteur (il va prendre celui de Chez Scheme, une autre implémentation) qui devrait lui apporter un boost de perfs.
C'est vrai, mais ça fait référence aux origines : le papier de McCarthy. Les choses ont bougées depuis.Lisp was originally created as a practical mathematical notation for computer programs
Rien ne me choque moi, je suis un scientifique ! - I. Jones
Non, non. Le papier de McCarthy dont je parle ("Recursive Functions of Symbolic Expressions and Their Computation by Machine" ) date de 1958. Il n'y a rien avant, en tout cas pas à ma connaissance. Mais c'est bien dans cet article qu'il pose les S-expressions comme notation théorique dont on parle.
Rien ne me choque moi, je suis un scientifique ! - I. Jones