libera/#lisp - IRC Chatlog
Search
21:36:24
Spawns_Carpetin-
What is the most useful lisp dialect and/or impl for general purpose scripting or programming
21:36:46
Spawns_Carpetin-
something with a decent-ish stdlib or at least access to many high quality libs
21:48:23
wasamasa
there are a few scheme implementations with access to high quality libraries via FFI, but I doubt that's what you mean either, lol
21:52:37
moon-child
it deigns to run in unix, because a lisp os with broad hardware support has not been devised yet; but only grudgingly
21:52:56
Spawns_Carpetin-
i love elisp but using it for general programming is kind of weird since its built to work with emacs
21:52:59
wasamasa
I use CHICKEN for programs that I want to put in more effort than I'd do with ruby
21:53:16
Spawns_Carpetin-
like loading a text file into a list, you have to put it into a buffer instead
21:53:19
dash[m]
Spawns_Carpetin-: why would you want something that didn't work with emacs, though? ;-)
21:54:21
mfiano
Depends how general he means. If he wants to do something like game development, maximizing CPU computation performance is a necessity (so I'd still go with Common Lisp :))
21:56:43
mfiano
(In actuality good game development involves balancing the load between the CPU and GPU, but since the GPU is for the most part a supercomputer that is only useful for specialized tasks...)
22:01:18
mfiano
Double-precision floating point operations on the GPU is a many-fold performance trap compared to single-precision, for example. Branching hurts quite a bit more than the CPU, too. etc
22:09:40
Spawns_Carpetin-
wow I messed that message up bad. let me retry. racket looks nice but it doesn't feel very lisp-y
22:10:39
Spawns_Carpetin-
well I wouldn't call it lacking exactly. iirc most things are immutable by default, and regular procedural style looping is discouraged
22:11:35
Spawns_Carpetin-
it seems like it leans a lot more towards functional programming than common lisp would, which is not a bad thing IMO
22:11:47
mfiano
Well it has its Scheme roots. Pre-ANSI and ANSI Common Lisp favored iteration over recursion, unlike Scheme and its derivatives.
22:15:39
copec
I mostly play in CL, but I learned lisp from SICP in the 90's, and prefer looping through recursion :-/
22:15:45
Psybur
Rackets loops are pretty good. for (and for/last etc) and its stop-before and stop-after, and break/final are nice. https://docs.racket-lang.org/guide/for.html
22:16:29
copec
interestingly enough, https://gist.github.com/copecog/98ac0e5cfafc1155bc82c31efae21ceb fib-recur is quicker on ever CL implementation I've tested
22:16:50
Spawns_Carpetin-
right now i have SBCL installed and have been using it. I have a really rough time getting the syntax right though
22:17:53
mfiano
You just need to choose the correct path as a beginner, and you become proficient fast
22:22:33
minion
Spawns_Carpetin-: look at PCL: pcl-book: "Practical Common Lisp", an introduction to Common Lisp by Peter Seibel, available at http://www.gigamonkeys.com/book/ and in dead-tree form from Apress (as of 11 April 2005).
22:24:25
mfiano
The one thing no book will teach you unfortunately, is how to set up Emacs, paredit/smartparens, and SLIME/Sly, which is a necessity since Common Lisp is such an interactive language.
22:27:13
copec
PCL references lisp in a box, I recommend https://portacle.github.io/ until you figure out your own system
22:30:15
mfiano
Cover to cover, without skipping anything, and taking your time with the "practical" chapters, asking questions here if something is confusing.
22:30:49
mfiano
With that path, you'll be on your way to being one of those famously bearded Lisp wizards :)
22:38:47
copec
I keep meaning to go through this with racket: https://beautifulracket.com/appendix/why-lop-why-racket.html
22:45:46
mfiano
The thing I dislike about Haskell the most, is it seems even more "research-y" than Lisp, with most libraries being incomprehensible type system abuses.
23:24:52
mfiano
I'm actually not sure if you can call the DSL Turing-complete, without ~/ and a closure.