Search
Thursday, 11th of April 2019, 18:34:12 UTC
18:37:41
moldybits
right, that's kinda obvious now that i see it. :)
18:38:13
moldybits
thanks, pjb and Bike.
19:14:50
sjl_
(defun f (list) (loop for (a . b) on list collect (list a (if b (car b) (first list)))))
19:25:29
warweasle
I never thought about it, but common lisp can use recursive macros, right?
19:29:07
flip214
warweasle: as long as you have some termination condition that triggers before the compiler stack is full...
19:29:26
warweasle
Ok. Then my mistake is somewhere else.
19:31:51
flip214
warweasle: care to paste?
19:32:41
warweasle
flip214: No, I moved everything into two functions just in case.
19:33:14
warweasle
I'll be happy to share when I'm done. It's for the lisp jam...It take a dialogue tree and executes it.
22:03:49
gjvc
does anyone have any suggestions on getting SLIME working on Fedora 30 ? it can't find swank-loader.lisp
23:10:38
Xach
gjvc: how did you install slime?
23:43:46
gjvc
i think it's there via rpm
23:44:24
gjvc
emacs-slime-2.19-4.fc29.noarch
23:49:59
gjvc
* (ql:quickload "quicklisp-slime-helper")
0:58:22
Lord_of_Life_
** NICK Lord_of_Life
2:55:57
beach
Good morning everyone!
4:57:01
nwoob
it is necessary to add . in alist like ((one . 1))
4:57:24
beach
nwoob: Not in general. What is the situation?
4:58:20
nwoob
Just saw the erc-autojoin-channels-alist example and it was (("freenode.org" "#emacs"))
4:58:39
nwoob
but from what I have read in book i have only seen with .
4:58:51
beach
I think you are confused.
4:59:18
beach
The CAR of an element of an alist is the key and the CDR of an element of an alist is the value.
4:59:46
beach
If the element is (KEY . THING) then THING is the value
4:59:56
beach
If the element is (KEY THING) then (THING) is the value.
5:00:30
beach
So in your example, the value is the list ("#emacs").
5:00:38
beach
But I imagine there can be more channels.
5:01:14
beach
So you could have ("freenode.org" "#emacs" "#sicl" "#lisp") in which case the value would be the list ("#emacs" "#sicl" "#lisp")
5:03:42
beach
nwoob: Does that make sense to you?
5:04:13
nwoob
so when we want to have more values in THING we write like above instead of cons pair
5:04:32
beach
If you want a list of things, yes.
5:04:58
beach
You can also write ("freenode.org" . ("#emacs" "#sicl" "#lisp")) to emphasize that the value is a list. It's the same thing.
5:06:42
beach
nwoob: I think you need to look into how lists are represented as chains of CONS cells. Once you understand that, the above should be obvious.
5:07:52
nwoob
ok, i will go through the cons pair once again, I knew I didn't got it properly
5:11:58
beach
nwoob: Do you see how (a . (b c d)) and (a b c d), when read by READ, result in the same constellation of CONS cells?
5:18:45
beach
Then you see that the CDR (i.e. the value of the element) is the same in both cases, namely (b c d).
5:19:26
beach
So there is nothing special about it. Just that in this case, the value is a list rather than an atom.
5:20:39
beach
http://metamodular.com/to-delete.pdf
6:26:47
no-defun-allowed
Good afternoon everyone
Friday, 12th of April 2019, 6:34:12 UTC