freenode/#lisp - IRC Chatlog
Search
12:24:00
pjb
So try to (setf *default-pathname-defaults* #P"") on those implementations where it doesn't work and try again.
12:30:18
madrik
In SLIME's backtrace, I see that (truename #P"") is called in the course of quicklisp's install procedure.
12:31:34
pjb
madrik: calling (truename #P"") is bad. Try to see where this #P"" comes from, and why it's not filled with an actual pathname.
12:36:02
madrik
I first thought that maybe it could be an issue with SBCL's interpreter, and so switched it to use the compiler.
12:37:21
madrik
I see that MERGE-PATHNAMES is called with arguments QUICKLISP-QUICKSTART::*HOME* and (TRUENAME *DEFAULT-PATHNAME-DEFAULTS*)
12:37:50
madrik
sb-interpreter::data = #(#<function merge-pathnames> #<sexpr quicklisp-quickstart::*home*... #x1002900A33> #<sexpr (truename *default-pathname-de... #x1002900A73>)
13:06:10
pjb
madrik: (TRUENAME *DEFAULT-PATHNAME-DEFAULTS*) is a bug in general, since *DEFAULT-PATHNAME-DEFAULTS* is not normaly bound to a file pathname.
13:09:45
Xach
WHat do you get from sbcl --noinform --non-interactive --no-userinit --no-sysinit --eval '(print *default-pathname-defaults*)' --eval '(terpri)'?
13:11:28
Xach
How about sbcl --noinform --non-interactive --eval '(print *default-pathname-defaults*)' --eval '(terpri)' ?
13:14:34
Xach
How about: ssbcl --noinform --non-interactive --load ~/Source/quicklisp/quicklisp.lisp --eval '(quicklisp-quickstart:install)'
13:17:05
madrik
Quicklisp has already been installed. Load #P"/home/madrik/quicklisp/setup.lisp" instead.
13:19:44
Xach
How about: sbcl --noinform --non-interactive --load ~/Source/quicklisp/quicklisp.lisp --eval '(quicklisp-quickstart:install :path "/tmp/quicklisp/")'
13:21:51
Xach
Well, sorry it glitched, that is not an error that happens typically. It's not a "oh that happens all the time and here's the workaround" sort of thing.
13:29:39
madrik
If I want to use quicklisp to manage local projects of mine, what should I put in 'quicklisp/local-projects' -- the ASD system definitions and all Lisp source files?
13:31:28
beach
You can make any number of subdirectories in that directory, or you can put symbolic links (at least for SBCL) in that directory to anywhere you like.
13:32:18
beach
You just need to remember to execute (ql:register-local-projects) after every new ASDF file you create.
13:49:16
madrik
Is the DO form in PRODUCE-TWO-RANDOM-NUMBERS a good way to get two distinct random numbers?
13:51:16
_death
madrik: you can (random n) to get the first number, then (random (1- n)) to a number that can be mapped to the second number
13:56:54
_death
in this case, it means if the second number is less than the first, take it as is, otherwise, increment by 1
13:59:41
beach
If the first number is A, then A+1 will never be produced as a result of that procedure.
14:00:43
_death
you can think of the first as returning an index to a sequence of (iota n) and the second as returning an index to the sequence (remove first-number (iota n))
14:01:33
_death
beach: suppose N=10 and A=5.. if the second form (random 9) returns 5, then the second number is A+1=6
15:01:05
_death
in general a Q&D way is (subseq (shuffle (iota n)) 0 k) although solutions using LFSRs and Feistel networks are also possible
15:21:08
_death
also note that alexandria:shuffle is still atrocious for lists :/ so it's better to coerce to vector, pass, and coerce back
15:21:11
Posterdati
I submitted some fixes for cffi to make it run on openbsd, but in the new release there's no trace of them :(
17:31:19
verisimilitude
I appreciate the thoughts my style document received. As noted, the upcased code is for display purposes and not as a suggestion to write it that way in a program. To you, no-defun-allowed, there's nothing wrong with a macro not expanding to symbols in the COMMON-LISP package, of course, but you should try if it's possible; in your case, it may very well not be; I don't believe LOOP and FORMAT have any excuse for their awful
17:36:13
verisimilitude
I wrote the document because someone in my Lisp venue wanted to read style guides and I'd a dearth of writing ideas.
19:29:21
verisimilitude
There are some things I'd like to add or improve, but I've yet to do so. Are there any such things you'd want to discuss?
19:30:07
verisimilitude
Oh, I've also yet to completely rewrite the documentation, as I've been intending to do with most of my documentation.
19:34:58
_death
verisimilitude: when I used it about a year ago, the issues were the differences in terminal emulators (I used the terminfo system, which is a pure CL "Terminfo database front-end") including mouse input (possibly, I don't think I fully resolved it).. I also had a small patch to support "bright" colors.. personally I think it was a mistake to represent colors as symbols (only)
19:39:39
_death
another was the issue of distribution, where a git repository was not available.. but since I found no reason to make my code public it wasn't a big deal (I just have my own git repo for your library)
19:46:16
verisimilitude
Oh, there have perhaps been changes since you last used it. Take a look. My READ-EVENT accepts mouse events, function keys, etc.; I added extended color support a ways back as well.
19:47:25
verisimilitude
Colors can be represented not just as symbols, but also RGB, CMY, and CMYK, as that's what ISO 8613-6 supports.
19:48:42
verisimilitude
Another change I'd been mulling over was adding (SETF PROPERTIES), which would make bold, italics, etc. easy to use, but I'd not decided on the set of properties I wanted to support; I'll probably resolve this soon by using a subset I'm certain of.
19:48:50
_death
good.. this is another reason to use a version control system - it is easier to notice updates
19:50:12
verisimilitude
It's unfortunate I've inconvenienced you, but I really just don't want to use git or these other systems, _death.
19:51:38
verisimilitude
The only really major and perhaps ``breaking'' change I've been considering is slightly changing how CURSOR behaves, by adding a CURSOR-NO-HANG and changing CURSOR to perhaps wait forever if the STREAM doesn't correspond to a terminal.
19:53:25
verisimilitude
If you'd want some additional feature, describe it to me and I'll mull it over.
19:55:19
_death
I guess fixing the mouse issues is the next thing to do there, and given your changes I may work on it ;)
20:02:00
_death
yes, the issue was with the read-event return values if I remember correctly.. maybe this was fixed
20:09:15
verisimilitude
Also, SET-MODE takes this as a list, for good reason, but that's obvious or would quickly be obvious.