libera/#lisp - IRC Chatlog
Search
17:29:10
mokulus
wasamasa: which learning resources would you recommend to an intermediate programmer?
17:32:24
mdhughes
So start writing a program and learn as you go. It doesn't have to solve some giant problem.
17:34:50
mdhughes
Literally the way I got back into Scheming was I did some of… the 31 days of December challenge, can't think of the name… and then adapted some old BASIC games until I was at a point where I could make more useful things.
17:39:26
mdhughes
Advent of Code. I had to look up a Bad Santa plot summary to find the goddamned word for the advent calendar Billy Bob eats and refills with crap. And that's what coding is like!
17:39:54
Guest17
mokulus: look up Practical Common Lisp. I used the chapter on binary parsing to inform my own needs in that area and wrote a half assed functional implementation
17:41:15
wasamasa
cannot find anything particularly egregious here: https://github.com/roswell/roswell/tree/master/src
17:41:56
Guest17
If you try translating a c program into common lisp (or any lisp I suppose) keep in mind that while you're learning the 1:1 translation of C to the lisp you chose, lisp provides powerful features for abstraction that you won't necessarily learn by doing a 1:1 translation
18:32:27
pjb
mokulus: 1- the probability that you will use lisp professionally are very low. The best you can hope for, professionally, is to use emacs and emacs lisp to help you in your work, but if you work in macOS, iOS, Android, and a bunch of other environments where there's an advanced IDE to help you, while emacs can still help you, it won't be as convenient as if you can use it 100% of the time.
18:32:59
pjb
mokulus: 2- the benefit of picking up lisp will be mostly personnal! It's way too much fun to program in lisp!
18:33:56
pjb
mokulus: plus, what you will learn by learning lisp and its ecosystem and history, you may be able to use it professionally, but often it will be seen as too advanced for your coworkers…
18:35:52
pjb
mokulus: and for emacs lisp, I'd advise to learn Common Lisp, and then emacs lisp and the emacs library.