My only prerequisite knowledge of LISPs comes from my reading of the SICP texts; they certainly contained an adequate amount of general knowledge for Scheme, but it was hardly thorough. I've since become rusty, and while I could use the texts as a reference, their main purpose is obviously not to be a reference for Scheme, and so I think me using it for that would be inappropriate.
I've heard of the "Racket" dialect, which seems to be output from the Scheme evolution tree. The dialect contains ample learning resources, but if possible I'd like to focus specifically on Scheme, as it's much more fun to use, which is what really matters in life. What texts/resources should I prime myself to read to rekindle my knowledge of Scheme/LISP in general?
have a nice day (-:
>>1
Some pointers:
* For Scheme I recommend the Little Schemer and Seasoned Schemer books. There is also Reasoned Schemer. They are written in a good style. Be sure to also read the docs for the implementation you choose (If in doubt, I recommend using Guile or Chicken).
* For Racket read the Little/Seasoned Schemer books and then read the Racket guide (https://docs.racket-lang.org/guide/index.html) You might also be interested in Beautiful Racket (https://beautifulracket.com/) and Racket News (https://racket-news.com/).
* For Common Lisp, I recommend the Practical Common Lisp a.k.a. the Gigamonkeys book (https://gigamonkeys.com/book/) or Common Lisp: A Gentle Introduction to Symbolic Computation (https://www.cs.cmu.edu/~dst/LispBook/). For reference, you want to read https://lispcookbook.github.io/cl-cookbook/ and the HyperSpec (http://www.lispworks.com/documentation/HyperSpec/Front/). There is also this book (which follows a Problem-Solution approach): http://weitz.de/cl-recipes/
* Read On Lisp at some point: http://www.paulgraham.com/onlisp.html
* The common lisp wiki: https://www.cliki.net/
* Read about LispM: http://fare.tunes.org/LispM.html and Interlisp Medley (https://interlisp.org/)
* For Scheme and Common Lisp in general, I recommend you use emacs (https://emacsrocks.com/) and Geiser/Sly. Also, install rainbow-delimiters
* Use the Guix (https://guix.gnu.org/en/#guix-in-other-distros) package manager for getting lisp packages.
I like to focus around projects that I want to see for myself. The matter of picking up new languages, paradigms, libraries, software platforms, etc. becomes significantly more meaningful because I give myself a situation where I want to learn these tools to achieve my project. My motivation is the end result of a working software project that works for me, not the specific tools that I used to bring me towards the final software.
How to learn Scheme? I found this from my bookmarks: https://ds26gte.github.io/tyscheme/index.html Is it any Good?
How to learn macros and call-cc?
Have you read your SICP today?
I would find a project where I would want to write Lisp code. In my case, I took inspiration from the book "The Nature of Code" by Daniel Shiffman. I wrote Guile code that follows the lessons.
bold Why should I ? Will it teach me how to be rich?
>>7
Being rich is a mindset about your personal economy. SICP is the magical incantation to conjure the spirits of the computer. Being rich and reading SICP are totally different things that have no connection to one another.
Scheme books:
https://archive.org/details/Schemer
>>2
Nice pointers.
The Scheme Programming Language
https://www.scheme.com/tspl4/
More links: https://www.scheme.org
>>9,11
Great books! (b ᵔ▽ᵔ)b
There's also:
GNU/MIT Scheme Reference Manual
https://www.gnu.org/software/mit-scheme/documentation/stable/mit-scheme-ref.pdf
A Scheme Primer
https://spritely.institute/static/papers/scheme-primer.html
Learn Scheme in 15 minutes
https://artanis.dev/scheme.html
And reading your Scheme implementation's standard/s
>>13
Forgot to add the link
https://standards.scheme.org/
>>13
GNU Artanis is fantastic. Thanks for the link.
How to Design Programs
https://htdp.org
Symta:
[code]
use www
www port!8080: hello = "hello world"
[/code]
GNU/Free Software:
[code]
(use-modules (artanis artanis))
(init-server)
(get "/hello"(lambda () "hello world"))
;; run it
(run #:port 8080)
[/code]
>>17
Scheme is a Lisp, Symta isn't, Nikita.
>>18
It is Lisp all down to the core.
<code>
$ ./symta -e '"www port!8080: hello = ["hello world"]".parse'
((`:` (www (`!` port) 8080) (`=` (hello) (hello world))))
</code>
Also I'm Nancy. Nikita is dead.
>>20
Is Nancy going to finish Nikita's game?
Nancy doesn't play games, outside of the BDSM ones with several stop words.
>>20
down to the core you are a man
Compared to you even kindergarten girls are men.
>>20
You will never be a woman, Nikita.
And the Hamster will be avenged, pidor.
cope and seethe, russian vatnik transphobe
>>26
Cope, seethe and dilate. YWNBAW, Nikita.
I'm about the begin my Lisp journey but I have some questions....
1. Does the freeware version of LispWorks or Franz's Allegro have benefits over SBCL?
2. Should I learn Flavors in addition to CLOS?
3. Why do some programmers insist that dynamic scoping is better? I can't see the appeal of it.
4. How do I learn Scheme macros and Common Lisp macros?
>>28
SBCL is all you need.
freeware
Nah
Just install Emacs + Sly.
Common Lisp macros