freenode/#lisp - IRC Chatlog
Search
21:11:12
_death
there are those arrow libraries, and also see https://adeht.org/usenet-gems/malleability.txt
21:15:05
fouric
I'm beginning to realize that one of Lisp's greatest strengths is the ability to create a DSL that allows you to express your ideas in the most clear or concise way possible.
21:15:51
_death
right, and you need a good taste so that what's clear to you won't be a total mess to others
21:16:30
fouric
It feels like Lisp makes programming even more like art by removing many of the mechanical restrictions that other languages have.
21:31:07
Shinmera
The idea is you can create lists of items, and people can sort them according to how they rate them, then compare how they rated things.
21:31:31
fouric
_death: https://adeht.org/ is very, very interesting to me. I don't suppose that you know of any similar sites or pages collecting articles/posts like those?
21:31:44
Shinmera
It's something I did a while ago to discuss which games me and my friends liked best of 2017, and I thought it might make a nice thing to have in general.
21:32:44
fouric
(sorry, not trying to shove you into making it easy for me to use - I'm happy to wait, and I would try to contribute myself if I had a bit more time)
21:43:30
fouric
I tried Haskell *briefly*, then gave up - Common Lisp is much easier, mechanically. Both those languages are still on my list of things to learn, but far enough down that it'll be a few decades until I get to them.
21:46:55
aeth
I think the only language more expressive than Lisp, and in a very different way, is assembly. There, you can do literally whatever you want, and probably very efficiently, although not portably. (And C is not sufficient portable assembly.)
21:47:30
aeth
Assembly fairly directly translates to/from s-expressions, too, so it probably wouldn't be too hard to give it real macros. It already has real functions.
21:49:08
aeth
_death: All we need is more languages with define-vop so someone can write a define-vop portability library.
21:49:42
aeth
CL isn't a particularly concise language if you take away the macros (including the built-in macros)
21:50:37
aeth
tagbody and go can fairly directly be translated into asm. Just "namespace" the tags to mimic the contained goto effect.
21:59:33
aeth
fouric: My point is that with asm, you can trivially add Lisp-style macros and then use Lisp-style macros to write Lisp-style abstractions (although you're working with registers instead of lexically scoped variables and special variables)
22:01:16
aeth
whoman: You'd have to write the macro system in another language instead of directly in asm (unless you first built up all of the abstractions necessary, which would be a waste of time because CL exists)
22:01:26
_death
I also found http://canonical.org/~kragen/sw/urscheme/compiler.scm.html a very neat example, starting from very little ending with a working compiler
22:42:09
pjb
aeth: well, writing lisp (or anything) in assembly is rather easy and fast: you just need to implement a few "primitive" functions and assembler macros, and use them systematically. It may be syntactically inconvenient, but you can achieve a higher level of abstraction quickly and easily enough.
7:53:11
jackdaniel
siraben: ecl is known to work on iOS (but requires some effort to build things, and you don't have access to c compiler - only bytecodes)
7:55:11
jackdaniel
easier testability. CL is not particularily functional, so answers here won't be very representative with this regard
7:56:03
minion
siraben: direct your attention towards 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).
8:01:48
Colleen
Common lisp hyperspec (tm) http://www.lispworks.com/documentation/HyperSpec/Front/index.htm
8:04:10
Shinmera
C, C++, Java, JavaScript, Python, Bash, Rust, Haskell, and probably others that I forgot about.
8:07:23
Shinmera
Or in other words, I don't see anything I care about that Clojure would offer me over CL.
8:11:57
patrixl
it skips over the whole topic of organizing your code in files, packages, etc and doing actual development
8:12:25
patrixl
otherwise it's a fun book to get the basics and get excited about Lisp (if you aren't already ;) )
8:13:02
jach[m]1
siraben: I'm about 100 pages from finishing LoL, I've enjoyed it but it's not very sticky. And skips over a lot I care about as an employed person in Blub. ;)
8:19:05
jach[m]1
One of the things that made me go "I wish someone had shown me this back when I had learned a little scheme and thought I knew 'lisp'" is this small series of posts:
8:26:04
siraben
Emacs was my go-to after learning Scheme, especially because paredit is just amazing when dealing with parens
8:28:54
patrixl
after spending a month coding lisp with emacs on a personal project, I went back to my work codebase in ruby and visual studio code and pulled quite a lot of hair out in frustration haha
8:47:22
siraben
I love that feeling of when I wish Emacs could do something, then implementing it myself.
8:47:40
patrixl
the annoying one is Outlook for Mac, it not only breaks some the usual macOS keybindings, it also maps ctrl-C etc to the copy paste
8:57:11
aeth
I accidentally use key bindings in Firefox all the time. It's not a big deal. Usually I just have to hit ESC to close the save page window that opens when I tried to search with C-s.
8:58:01
aeth
In the terminal, thanks to readline and its many clones, I use Emacs keybindings outside of Emacs all of the time. (The biggest difference is what C-u does, afaik.)
9:00:23
siraben
I was shook when I used my friend's Windows machine and 'C-x C-f' didn't do what I thought it would