Live data from Hacker News

Ask HN: I want to start learning Lisp. Where do I begin?

news.ycombinator.com

151–160 of 211 posts

Re: Ask HN: I want to start learning Lisp. Where do I begin?

#151
At this point I don't see how I could make a suggestion that hasn't already been made. My only regret is waking up in the wrong timezone and being late to the party. I think it is great to see so much interest and so many answers to this question here on HN.

I suppose one suggestion I might make is to take a look at Janet after you have a chance to do some reading on lisp. It is practical and multi-paradigm like Common Lisp but adopts syntax similar to Clojure. Plus it comes in a small package and the docs for the core library are really nice.

https://janet-lang.org/

Re: Ask HN: I want to start learning Lisp. Where do I begin?

#153

Earlier quoted context omitted.

Why is common lisp ugly? Many people here suggested common lisp. I was considering it. I like to learn for fun but I am looking for something practical. I will want to build some useful apps in the end with it.

This is mostly people complaining about weird names like RPLACA or having to type #' because it's a Lisp-2. From the MIT perspective it can feel inconsistent but for such an old, practical language, it is really well designed. I mean, if Common Lisp is ugly what are Perl and C++ then.

also ugly :)

Re: Ask HN: I want to start learning Lisp. Where do I begin?

#154
About the editor:

In general you can use any editor, but there are some features which your editor should have to make your life easier. I wrote a blog post about it some time ago: https://klibert.pl/posts/tools_for_lisp_syntax.html

Basically, syntax highlighting, automatic matching paren insertion, ability to jump to a matching paren are the baseline. If you can get those with a plugin to VSCode or Vim, you're good to go.

Re: Ask HN: I want to start learning Lisp. Where do I begin?

#155
post #39

If you mean Common Lisp, I'd say install SBCL and start playing with with the repl. Choose the editor you know best; even notepad is useful to copy and paste expressions to/from the repl. Any editor that's suited for programming will have a way to send expressions to the repl with a keystroke, which is much more comfortable. So basically, just pick VSCode. With that, you're ready to go. Take just one book and work th…

I'm doing Clojure for the Brave and True right now and it has been an amazing resource. It even incentivized me to get into Emacs as well, which has been a blast. I'm not a fan of the humor, but it does not get in the way at all.

Am a stalwart fan of the humor. And the cover with its dwarven warrior wielding his lambda hammer is a priceless inspiration to rise to the task and code.

Re: Ask HN: I want to start learning Lisp. Where do I begin?

#157

Lot of comments here, many good, so I'll try not to duplicate, but: 1. Emacs is a hurdle, but one that's worth it when you use SLIME. 2. I went through Barski's "Land of Lisp" and enjoyed it, but couldn't get the web server to work, so I tweaked it to use Hunchentoot[0] [0] - https://github.com/npsimons/land-of-lisp-using-hunchentoot/c...

landoflisp.com mirrors:

https://web.archive.org/web/20180113072302/http://landoflisp...

https://archive.is/1WIG8

Re: Ask HN: I want to start learning Lisp. Where do I begin?

#158

There are obviously many possible paths, so I can only really tell you what I've done. I can't say it's necessarily the best approach. For me, I decided to start with Common Lisp. I installed SBCL, Slime for Emacs, and started working through the book Practical Common Lisp . By and large this seems to be a workable approach, but I will offer up this caveat. The PCL book is very much "project based" in that the author…

I wouldn't focus too much on "sequencing, selection, and iteration". That's only the start of it. It's how you think if you're programming Python or Java or C or whatever.

With Lisp you can better think in terms of abstractions. In particular how do you do data abstraction, how do you do functional abstraction (that's the control flow: sequencing selection and iteration) and how do you do syntactic abstraction?

That last one is where Lisp (any Lisp) really comes into its own. It's where you go beyond the expressiveness of those other programming languages. Whether you go with defmacro or define-syntax, it opens up a whole other world.

And the expressiveness here isn't meant to suggest that you can write programs that you can't in other languages (they're all Turing complete) but that you can write new kinds of control flow and scoping constructs so you're not limited to the sequencing selection and iteration that the language provides.

Re: Ask HN: I want to start learning Lisp. Where do I begin?

#159
>I use VS Code and Vim. Are they suitable for learning Lisp?

Better install Portacle, that's the only thing you need to install to edit, compile, and debug Common Lisp code.

Then you can learn by reading a good book like a "Gentle introduction to Symbolic Computation" or "Practical Common Lisp".

Re: Ask HN: I want to start learning Lisp. Where do I begin?

#160

About the editor: In general you can use any editor, but there are some features which your editor should have to make your life easier. I wrote a blog post about it some time ago: https://klibert.pl/posts/tools_for_lisp_syntax.html Basically, syntax highlighting, automatic matching paren insertion, ability to jump to a matching paren are the baseline. If you can get those with a plugin to VSCode or Vim, you're good…

Stock Vim got all of that.
Post reply on HN