TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Starting with Lisp: A collection of beginner pointers

63 点作者 dragonquest超过 14 年前

6 条评论

thinkingeric超过 14 年前
For experienced programmers, the clearest introduction to Common Lisp is the first few chapters of "Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp" by Peter Norvig. His writing style is exceptional. Not quite so clear, but also not too dense, is "ANSI Common Lisp" by Paul Graham. Peter Seibel's "Practical Common Lisp" is dense (words per page), but is good for a "now I know a little Lisp, what can I do with it" book to read second. Winston's "Lisp (3rd)" goes from an extremely basic intro to heavy-duty AI without building up to it. But you can get it cheap, so it is worth it for a beginning reference.<p>As a sidenote, when you first look into Lisp, you hear a lot of kvetching and mocking about parentheses. And indeed, there is a point in the learning curve where you get confused about the proper numbers of parentheses for certain kinds of expressions (so-called 'special forms'). And you see Lisp apologists countering that it's not the parentheses that matter; rather the indentation is what helps you understand the code.<p>In my experience, what happens is that as you become familiar with these 'special forms', you learn to recognize the visual patterns of indentation and parentheses that are particular to each of these expressions. And once you write a number of them yourself, grokking the code of others is no problem. And as in all languages, a decent editor and syntax coloring is helpful.
评论 #2010969 未加载
motxilo超过 14 年前
I would add that reading SICP or HtDP is not enough, you need to work through the exercises to sink in the important programming principles they try to teach you. Also, I miss the Schemer/Lisper series by Friedman et al. in that list.<p>Just out of curiosity, regarding claims like "Common Lisp has a fairly sized community which is widely regarded as a tough bunch" or "The Scheme community is really one of the most tolerant communities of them all", are those based on personal experience? How did you come up with such conclusions? I'm really interested :)
评论 #2007992 未加载
评论 #2007856 未加载
评论 #2008131 未加载
shawndumas超过 14 年前
How 'bout Land of Lisp? [1]<p>----<p>[1]: <a href="http://landoflisp.com/" rel="nofollow">http://landoflisp.com/</a>
评论 #2007999 未加载
peteysd超过 14 年前
Just got through reading the first suggested item in the Background section: <a href="http://www.defmacro.org/ramblings/lisp.html" rel="nofollow">http://www.defmacro.org/ramblings/lisp.html</a><p>I recommend this to anyone interested in learning about the appeal of Lisp. It's well-written, and lays a nice foundation for those trying to figure out what all the buzz surrounding Lisp is about. I'm sold.
Xurinos超过 14 年前
A few more tips I found helpful as a beginner:<p>* Most lisps can compile a binary, even the free ones.<p>* sbcl seems to have a ton of popularity and support.<p>* Want to mix Lisp directly into your C code? Try ECL. Most important: it works, and should not take you long to connect it to your program.<p>* clisp has a nice readline-like commandline; you can get something like it in sbcl with the linedit module<p>* ASDF isn't horrible, but quicklisp makes packages much easier to get<p>* cliki.net - browse packages, ideas, etc<p>* CFFI package lets you use any external library with your Lisp program. Lisp has its own version of C header files that you can build via CFFI.<p>* Edit lisp in any editor. Emacs is neat. Vim works, too. Both have some extra support tools for Lisp. Emacs is more supported. Worry about learning Lisp first.<p>* At minimum, your editor should help you figure out what ()s match (or provide them for you). Otherwise, you will spend time counting and being annoyed with ()s rather than loving them.<p>* Before you write your fourth Lisp program, read some typical Lisp code. Just get a feel for it. Look at how it is indented and arranged. Go back to writing code.
shanked超过 14 年前
I'm just beginning my road down the path of learning Lisp. My plan for learning is:<p>1. Read the Practical Common Lisp chapters which introduce Lisp features.<p>2. Write a web application using Common Lisp (Hunchentoot/Postmodern). After all, the only way to learn a language is to use a language.<p>3. Re-read Practical Common Lisp and/or other Lisp books.<p>I realize that I won't remember 90% of the material read in Practical Common Lisp in Step 1. However, I'm hoping that I can get an overview of the features available in the language to help design a better web application. Knowing some names of features like CLOS, cons cells, plists, alists (and others that I haven't gotten to yet) will just make it easier for me to search for help when I run into problems.<p>If anyone has any references to good materials for the following:<p>- Learning Common Lisp<p>- Creating CL applications using Hunchentoot and/or Postmodern<p>- Quality Common Lisp API specs<p>- Any other tips for an aspiring Lisper<p>I'd be grateful for any additional information that might help me along the way.
评论 #2008384 未加载
评论 #2008382 未加载
评论 #2008626 未加载
评论 #2009045 未加载