Je programme en Python, PHP, Java et C depuis quelques années maintenant, et je viens de terminer de lire Hackers and Painters, alors j'aimerais essayer LISP!
Je comprends que c'est totalement différent de ce que je sais et que ce ne sera pas facile. De plus, je pense (corrigez-moi si je me trompe) qu'il y a beaucoup moins de communauté et de développement autour de LISP. Ma question est donc: quelle est la meilleure façon d'apprendre LISP?
Cela ne me dérangerait pas d'acheter des livres ou d'investir du temps. Je ne veux tout simplement pas que ce soit gaspillé.
L'idée "finale" serait d'utiliser LISP pour le développement Web, et je sais que ce n'est pas si courant donc ... Je sais qu'il est bon de planifier mon apprentissage avant de choisir le premier livre ou le premier tutoriel et de passer beaucoup de temps sur quelque chose qui peut ne pas être le meilleur moyen!
Merci à tous pour vos réponses!
edit: J'ai lu Practical Common Lisp et j'étais: ... long, dur, intéressant et m'a définitivement fait rouler en Lisp, après cela j'ai lu le petit intrigant, et c'était court, amusant et très très bon pour ma programmation globale. Donc, ma recommandation serait de lire d'abord le petit intrigant, puis (c'est quelques heures et ça vaut le coup) si vous décidez que le lisp (ou le schéma ou tout autre dialecte) n'est pas ce que vous cherchiez, vous aurez toujours un très amusant nouvelle façon de penser la récursivité!
la source
Réponses:
Essayez de lire Practical Common Lisp , de Peter Seibel.
la source
Mon préféré est Abelson & Sussman Structure et interprétation des programmes informatiques . Il utilise Scheme, qui est un dialecte agréable et propre de Lisp.
Si vous aimez une approche plus pratique, vous devriez peut-être choisir un cadre Lisp pour la conception Web (je n'ai aucune idée si une telle bête existe) et vous lancer directement.
la source
Vous voudrez peut-être commencer par The Little Schemer comme échauffement. Ce n'est pas un livre pratique sur l'écriture de programmes de production Lisp, mais c'est un excellent livre pour apprendre à penser en Lisp.
la source
Le MIT a mis à disposition un cours complet de LISP au format DIVX et MPEG. Je le recommande fortement.
http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman-lectures/
la source
Il existe maintenant un livre intitulé «Land of LISP» qui enseigne la programmation LISP à travers l'écriture de jeux de texte de style années 80. Je le lis maintenant, il est très bien écrit et ne se prend pas trop au sérieux, ce que j'aime bien.
la source
Il y a plusieurs options ici. Tout d'abord, Scheme et Common Lisp sont assez différents de manière assez profonde (comme la portée); vous devriez en choisir un pour commencer et vous y tenir pendant un moment . Je suis un fan de Common Lisp, mais c'est peut-être l'une de ces questions religieuses vi-vs-EMACS.
Pour Scheme, optez pour Scheme Programming Language de Kent Dybvig , suivi de SICP.
Pour Common Lisp, ainsi que Practical Common Lisp, je recommanderais Successful Lisp de David Lamkins . Successful Lisp est également disponible en ligne gratuitement .
Ensuite, regardez Lisp dans Small Pieces de Queinnec et Lisp de Norvig dans le livre AI .
Marty Hall a une belle liste chez Johns Hopkins.
Mise à jour : je ne veux pas dire s'y tenir pour toujours, juste qu'essayer d'apprendre les deux à la fois serait déroutant.
la source
Procurez-vous The Land of Lisp de Conrad Barski. C'est une introduction amusante à la programmation Lisp à l'aide de dessins animés et de jeux.
la source
Je recommanderais Project Euler comme une excellente source de petits problèmes que vous pouvez utiliser pour vous apprendre tout nouveau langage de programmation.
la source
Ansi Common Lisp de Paul Graham est un bon livre.
Je pense qu'il pourrait être épuisé, donc votre meilleur pari pour l'obtenir via Amazon. J'ai eu le livre pour un cours de "traitement du langage naturel". J'ai pris ma deuxième année à l'université. Nous devions écrire les projets de programmation en LISP, et j'avais donc besoin d'apprendre Lisp rapidement.
Le livre m'a beaucoup aidé.
la source
Une fois, j'ai eu un problème. Je ne savais pas lisp. J'ai donc décidé de télécharger LISP dans une boîte.
Ensuite, je me suis retrouvé avec une installation Emacs sans aucune aide ni documentation.
Ensuite, j'ai eu deux problèmes.
la source
Pour les apprenants sérieux, je recommanderais PAIP de Norvig. C'est une excellente ressource pour apprendre à la fois Lisp et AI.
la source
Berkeley propose CS61a au format podcast. Ceci est une introduction à la classe CS basée sur SICP. C'est une version plus moderne que les vidéos de 1982 disponibles sur le MIT.
la source
Je travaille actuellement sur Lisp et je suis tombé sur "le livre" pour apprendre Lisp. Il a été suggéré par Rainer Joswig
Le livre s'appelle Common Lisp: A Gentle Introduction to Symbolic Computation et peut être téléchargé au format PDF. L'auteur commence par une approche UML de Lisp dans le premier chapitre et introduit progressivement de plus en plus de syntaxe Lisp.
J'ai également regardé le lisp pratique et je pense que l'auteur passe sous silence beaucoup d'informations requises, même pour un programmeur chevronné. Ce livre ne semble pas faire cela (je n'ai pas complètement terminé, mais je l'ai trouvé suffisamment utile pour le suggérer).
une dernière chose, vous aurez besoin d'un environnement pour travailler. J'ai trouvé que Lisp in a Box fonctionne bien. Il fonctionne sous Windows et Linux et utilise des eMacs.
la source
Je suis attiré par LISP par son dialecte JVM - Clojure. Clojure est en quelque sorte un excellent LISP, car
En d'autres termes, Clojure peut être utilisé en production ici, maintenant.
En ce qui concerne les ressources, il existe au moins 4 livres et de nombreuses ressources en ligne:
la source
J'ai aimé lire Practical Common LISP et ANSI Common LISP .
Sur LISP semble intéressant, mais à 190 $ semble un peu cher pour un livre.
la source
Pour le développement Web, vous voudrez peut-être jeter un coup d'œil à hunchentoot , un serveur Web écrit en commun lisp.
la source
J'ai trouvé que le fait de travailler sur les exercices de "The Little Schemer" m'a vraiment aidé à affiner le côté récursif et de correspondance de modèles de ma pensée et a rendu le travail en XSLT considérablement plus facile.
la source
Je recommande d'abord une introduction douce au calcul symbolique ou un lisp commun pratique, en fonction de vos expériences de programmation. Pour pratiquer, j'utilise Allegro CL 8.2 Free Express Edition sous Windows. Cela transforme la pratique en beaucoup de plaisir.
la source
Une sorte de question difficile à répondre ... Je pense que tout dépend de votre style d'apprentissage.
J'ai appris LISP dans mes cours d'IA et de systèmes experts à l'université, mais c'est comme ça que j'apprends ... Je ne suis pas un grand apprenant en livres, je préfère que quelqu'un me l'explique en classe.
LISP est définitivement un langage unique et il nécessite une nouvelle réflexion si vous êtes habitué à la programmation conventionnelle C, Java, PHP.
Bonne chance à vous !
la source
J'ai trouvé que la lecture du livre SICP m'a vraiment aidé à apprendre. J'ai utilisé Steel Bank Common Lisp (SBCL) et j'ai eu beaucoup de succès avec.
Bonne chance
la source
Prenez un seau de (et) et allez en ville.
la source
Je ne sais pas s'il y a quelque chose de spécial à propos de Lisp qui le rend différent de l'apprentissage d'une autre langue. Il vous suffit de commencer à l'utiliser et à essayer ses fonctionnalités.
Une option pourrait être d'essayer un projet simple .
Une autre option, spécifique à Lisp, serait d'écrire une extension Emacs qui vous assiste dans votre travail habituel.
la source
Lisez ces livres dans l'ordre: Introduction douce au calcul symbolique, ANSI Common Lisp par Paul Graham, puis passez à Practical Common Lisp. Ou ignorez ACL et utilisez-la comme référence tout en travaillant sur PCL.
la source