freenode/#lisp - IRC Chatlog
Search
13:12:47
loginoob
I'm reading CL-gentle introduction to symbolic computation. How can i check if my answers are correct for the exercises
13:18:53
loginoob
I am not able to answer the question: PRove by contradiction that circular list cannot be constructed using just CONS. My answer from what i understood is that cons take two argument and i cannot give reference of first cell as second argument.
13:22:49
_death
loginoob: to do this indirect proof, you first assume that you can create a circular list using just CONS
13:23:24
_death
loginoob: then, you follow the consequence of this premise together with the definition he presents and arrive at a contradiction
13:26:44
beach
loginoob: To create a cell, the successor cell must already exist. I think you can derive a contradiction from that.
13:26:49
_death
since you arrived at a contradiction solely by using this premise and the definition (and the rules and axioms of logic), the premise must be false
13:28:18
_death
but beach is right.. I doubt gentle is meant to require knowledge of natural deduction :)
13:28:43
loginoob
so, let's say circular list contains three elements A B C and by making it from cons i have to cons A with cdr of C but that would make an infinite list and making it more than three elements so i cannot construct it using cons. Is that right by contradiction?
13:56:43
_death
a circular list looks like #1=(X . #1#) ... assume it was created by just using cons. then, #1# must have been passed to cons in the cdr position, but #1# has not yet been created at that time..
14:02:53
loginoob
_death: A cell is created after C and to point C to A cell A must have been created before C so that's the contradiction. ok, got it. Thank you :)
15:43:05
comborico1611
How do you automatically log into channels which require registered nicknames, when the nickserv executes after autologin executes?
15:54:22
comborico1611
Hmm. That's got to be one of the stranger things of the computing world. Reminds me of something like inventing the aersol can before the wheel.
18:33:14
fiddlerwoaroof
Xach: unless someone else has volunteered, I'd like to take over maintainership of linedit
18:35:51
fiddlerwoaroof
I'm not sure what the right way to go about this is, since the current maintainer is unresponsive
19:00:25
rme
I want to make a ccl 1.12 release pretty soon. We currently bundle ASDF 3.2.0. Will upgrading to ASDF 3.3.1 cause more harm than good?
20:12:14
khrbt
fiddlerwoaroof: Xach had suggested moving linedit to sharplispers. 2018-01-18.log:[04:57:11] <Xach> khrbt: maybe we could move the github one to sharplispers and call it canon? i can check with nikodemus
20:24:12
fiddlerwoaroof
Although, linedit is only broken because madeira-port doesn't work with ASDF-3.3.1, which makes the fix a little tricky
20:25:17
fiddlerwoaroof
Because, unless previous versions of ASDF support :if-feature, we have to either do something fancy or choose between forwards and backwards compatibility
20:40:00
pjb
I still have loader files, only they setup asdf:*central-registry*, and use quickload to load the system. ;-)
20:41:02
pjb
rme: it is better if the asdf version is consistent with what is provided by the other implementations.
20:47:28
pjb
users would have to locate an asdf and load it themselves. That said, this still has to be implemented for when a newer version is needed.
20:54:32
khrbt
doesn't quicklisp also include its own copy of asdf? If most people use quicklisp, wouldn't they get automatically get asdf too?
21:30:07
attila_lendvai
khrbt: asdf goes out of his way to detect old versions and upgrade them if needed, while avoid accidentally downgrading. all maintained lisps ship with a relatively fresh asdf, while the one in ql is rather old, so it's practically irrelevant that it's there.
21:32:18
attila_lendvai
fiddlerwoaroof: and others don't like cruft accumulating due to a strict backward compatibility policy. not updating is always an option... especially since DVCS and tags made integration that much easier
21:37:19
fiddlerwoaroof
I generally dislike the accumulation of cruft due to backwards compatibility
21:37:36
fiddlerwoaroof
But, the more important something is to a language, the more important backwards compatibility is
21:44:38
fiddlerwoaroof
If I had my preference, the build system for a language would never make a backwards incompatible change
22:28:12
jeosol_
I need some help guys. I have been getting this error in my backtrace: 0: (SB-VM::TAIL-CALL-SYMBOL 19 19 0) and that the function "some-package-name::get-cell-p0" is not defined. The latter function is a macro that takes 3 arguments
22:28:21
jeosol_
The get-cell-p0 is a function, but it is generated automatically by a macro when I start the application.
22:31:15
Bike
never seen that before, but it's not an error. the actual error is that your thing isn't defined?
22:38:32
jeosol_
@bike: (LOOP FOR POINT ACROSS #(0 1 2 3) COLLECT (FUNCALL (INTERN (FORMAT NIL "GET-CELL-P~A" POINT)) I J K))
22:39:13
jeosol_
That is the call I am making. I am constructing the actual function to call on the fly, and this is usually not known ahead of time. So I generated several functions by macro when I start
23:22:21
aeth
onion: It has been a while, but going through parts of the book, iirc, it looks like the book generally agrees with the consensus of this channel, except when the author promotes his own libraries (can't really fault the author for that).
23:25:35
jeosol_
@bike: I think I may have spotted the error, not sure. I checked the following and it returns nil : (eql (intern (format nil "GET-CELL-P~A" 0)) (intern (format nil "GET-CELL-~A" :PO)))
23:26:18
jeosol_
The form on the right site is now I defined the get-cell-p0 function initially (form on right side of eql), and then I am calling it in a different function as the form on the left side of the eql symbol
23:27:02
jeosol_
There are some reasons I am calling it that way, but I have to change this it seems.
0:50:23
jeosol_
what is the better way to create function name at runtime. For get-cell-p0 function I am doing something like: (intern (format nil "GET-CELL-P~A" 0), I need to create other corresponding functions like get-cell-p1, get-cell-p2, etc
0:54:31
Bike
well, usually you don't do that. if you do do that, something like that is fine, though you should use an explicit package and prefer find-symbol.
0:59:43
jeosol_
These functions are defined by a macro when I start the application. Then depending on the argument to another function, I have to pick one of get-cell-p1, get-cell-p2, etc
1:02:02
jeosol_
@bike, what I mean is that, I need to call get-cell-p0, or get-cell-p1, as follows (funcall (intern (format nil "GET-CELL-P~A" 0)) I J K) -- this if for get-cell-p0. The get-cell-? functions have been defined earlier by a macro and take three