phoe changed the topic of #lisp to: Common Lisp, the #1=(programmable . #1#) programming language | <http://cliki.net/> <https://irclog.tymoon.eu/freenode/%23lisp> <https://irclog.whitequark.org/lisp> <http://ccl.clozure.com/irc-logs/lisp/> | SBCL 1.4.16, CMUCL 21b, ECL 16.1.3, CCL 1.11.5, ABCL 1.5.0
ring has quit [Remote host closed the connection]
lavaflow has quit [Read error: Connection reset by peer]
sr5h has quit [Remote host closed the connection]
lavaflow has joined #lisp
ring has joined #lisp
Achylles has joined #lisp
xkapastel has quit [Quit: Connection closed for inactivity]
ring has quit [Remote host closed the connection]
fivo has quit [Quit: WeeChat 1.9.1]
cyberoctopi has joined #lisp
libertyprime has joined #lisp
Oladon has quit [Quit: Leaving.]
simendsjo has quit [Remote host closed the connection]
simendsjo has joined #lisp
varjag has joined #lisp
varjag has quit [Ping timeout: 252 seconds]
mindCrime_ has quit [Ping timeout: 252 seconds]
t58 has quit [Quit: Night All]
_ark_ has joined #lisp
FreeBirdLjj has joined #lisp
zotan has quit [Ping timeout: 246 seconds]
zotan has joined #lisp
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #lisp
zotan has quit [Ping timeout: 258 seconds]
zotan has joined #lisp
rumbler31 has quit [Remote host closed the connection]
FreeBirdLjj has quit [Ping timeout: 246 seconds]
Oladon has joined #lisp
Achylles has quit [Remote host closed the connection]
mindCrime_ has joined #lisp
q9929t has joined #lisp
<beach> Good morning everyone!
deng_cn has joined #lisp
gabbiel has quit [Remote host closed the connection]
yangby has joined #lisp
yangby has quit [Client Quit]
libertyprime has quit [Ping timeout: 246 seconds]
elderK has joined #lisp
Oladon has quit [Quit: Leaving.]
mooshmoosh has quit [Ping timeout: 246 seconds]
mooshmoosh has joined #lisp
libertyprime has joined #lisp
deng_cn has quit [Ping timeout: 250 seconds]
asarch has joined #lisp
_ark_ has quit [Ping timeout: 252 seconds]
deng_cn has joined #lisp
deng_cn has quit [Ping timeout: 246 seconds]
pyx has joined #lisp
pankajgodbole has joined #lisp
Oladon has joined #lisp
caltelt has quit [Ping timeout: 252 seconds]
q9929t has quit [Remote host closed the connection]
q9929t has joined #lisp
q9929t has quit [Client Quit]
orivej has joined #lisp
asarch has quit [Quit: Leaving]
pyx has quit [Quit: WeeChat 2.4]
ecilam has quit [Quit: Leaving]
ricekrispie has joined #lisp
ricekrispie2 has quit [Ping timeout: 245 seconds]
idlus_ has quit [Ping timeout: 256 seconds]
mooshmoosh has quit [Ping timeout: 246 seconds]
mooshmoosh has joined #lisp
libertyprime has quit [Read error: Connection reset by peer]
ecilam has joined #lisp
libertyprime has joined #lisp
orivej has quit [Ping timeout: 268 seconds]
idlus_ has joined #lisp
dddddd has quit [Remote host closed the connection]
vlatkoB has joined #lisp
parjanya has joined #lisp
mooshmoosh has quit [Ping timeout: 245 seconds]
mooshmoosh has joined #lisp
ian_0xF has joined #lisp
ian_0xF has quit [Client Quit]
asarch has joined #lisp
<asarch> What does #. mean?
<aeth> eval at read time
<asarch> And '#:
<asarch> ?
<beach> clhs #.
<aeth> e.g. (let ((number 42)) (check-type number (integer 0 #.(expt 2 5))) number)
<aeth> Notice that the type name in check-type is not quoted, but because (expt 2 5) => 32 at read time, it's as if you wrote (integer 0 32)
<aeth> very niche feature, although some people (including me not too long ago) thought it was more useful than it actually is and used it unnecessarily
<asarch> And '#: ?
<beach> asarch: ' means quote.
<beach> clhs #:
<aeth> a symbol that's not part of a package, i.e. (symbol-package '#:foo) => NIL
<beach> and that is what #: means.
<asarch> Is there a list for all these #s?
<aeth> that is an optimization. (defun foo () #.(find-package '#:alexandria)) ; if I disassemble this in SBCL, I see it just returns #<PACKAGE "ALEXANDRIA.0.DEV">
<no-defun-allowed> clhs 2.4.8
<aeth> (defun foo () (find-package '#:alexandria)) ;if I disassemblet his in SBCL, I see it contains '#:ALEXANDRIA and calls #<FDEFN FIND-PACKAGE>
<aeth> s/disassemblet his/disassemble this/
<asarch> Thank you guys
<asarch> Thank you very much :-)
<aeth> so at least for my version of SBCL (which is a big caveat) that particular micro-optimization does in fact optimize
<aeth> maybe 5x faster... but incredibly fast either way.
jeosol has quit [Ping timeout: 256 seconds]
asarch has quit [Quit: Leaving]
gareppa has joined #lisp
gareppa has quit [Client Quit]
Oladon has quit [Quit: Leaving.]
deng_cn has joined #lisp
ggole has joined #lisp
lavaflow has quit [Read error: Connection reset by peer]
deng_cn has quit [Quit: deng_cn]
deng_cn has joined #lisp
lavaflow has joined #lisp
pankajgodbole has quit [Ping timeout: 248 seconds]
keep_learning_M has quit [Quit: This computer has gone to sleep]
keep_learning_M has joined #lisp
karlosz has quit [Read error: Connection reset by peer]
karlosz has joined #lisp
Lord_of_Life has quit [Ping timeout: 252 seconds]
Lord_of_Life has joined #lisp
deng_cn has quit [Ping timeout: 250 seconds]
deng_cn has joined #lisp
orivej has joined #lisp
keep_learning_M has quit [Quit: This computer has gone to sleep]
idlus has joined #lisp
idlus_ has quit [Ping timeout: 256 seconds]
deng_cn has quit [Ping timeout: 252 seconds]
deng_cn has joined #lisp
t3hyoshi has joined #lisp
<dmiles> how unlikely is it that a client/server SWANK for 2001 and now should be able to work?
<dmiles> my question is if the exchanged information has varied a lot
<t3hyoshi> Client is 2001 or server is?
<dmiles> i am trying out the CUSP client.. i say 2001 but maybe its 2008
<dmiles> Server is the same date.. but was going to change the server to ABCL 2019
rumbler31 has joined #lisp
varjag has joined #lisp
<dmiles> teh Client is written in lots of hardcoded java
<t3hyoshi> That
<t3hyoshi> That might be an issue right there.
* dmiles is tryign to get a date on what the lisp code of the server is
<t3hyoshi> You might get things to run. I mean, Lisp is good with backwards compatibility. The Java stuff may be the issue though.
<dmiles> Slime 2008-08-14
varjag has quit [Ping timeout: 245 seconds]
<dmiles> well my hope of course is that slime/swqank protocol not change ever
<dmiles> but that is probably too much to expect :O
<dmiles> though i dont know why it ever actualyl need to change past a certain date
<pjb> dmiles: there has been a few changes. I don't know about compatibility. IIRC, there was at least one incompatible change in the protocol.
<pjb> So perhaps 2001 is too old.
<pjb> But it'd be easy to load a newer swank.
<dmiles> oh one good thing.. i started looking deeper i am at least at 2008 uinstead of 2001
<dmiles> (the java code of CUSP is circa 2008)
<dmiles> and the lisp code that CUSP hosts is 2008
dale has quit [Quit: dale]
<dmiles> when looking at the CUSP client java code.. it actualyl starts SBCL and gives it the swank-sbcl.lisp from 2008
mrak has joined #lisp
<dmiles> for connecting to LarKC_CommonLisp (my lisp) i can use swank-abcl.lisp from 2008.. but i was hoping current emacs users would still be happy
deng_cn1 has joined #lisp
<dmiles> (not that i know for sure they'd be unhappy!)
<dmiles> unhappy with the default server that starts with my lisp being 2008
Inline has quit [Quit: Leaving]
deng_cn has quit [Ping timeout: 248 seconds]
deng_cn1 is now known as deng_cn
nowhere_man has quit [Ping timeout: 252 seconds]
keep_learning_M has joined #lisp
deng_cn has quit [Remote host closed the connection]
varjag has joined #lisp
deng_cn has joined #lisp
mrak has quit [Remote host closed the connection]
Inline has joined #lisp
varjag has quit [Ping timeout: 250 seconds]
ecilam has quit [Ping timeout: 252 seconds]
Arcaelyx has quit [Ping timeout: 246 seconds]
elazul_ has joined #lisp
karlosz has quit [Quit: karlosz]
Arcaelyx has joined #lisp
mindthelion has quit [Read error: Connection reset by peer]
techquila has joined #lisp
orivej has quit [Ping timeout: 258 seconds]
techquila has quit [Remote host closed the connection]
techquila has joined #lisp
<makomo> morning
nanoz has joined #lisp
<Inline> morning
random-nick has joined #lisp
simendsjo has quit [Ping timeout: 248 seconds]
rumbler31 has quit [Remote host closed the connection]
techquila has quit [Ping timeout: 252 seconds]
aozt has joined #lisp
nowhere_man has joined #lisp
idlus has quit [Ping timeout: 256 seconds]
angavrilov has joined #lisp
idlus has joined #lisp
fivo has joined #lisp
ym has quit [Remote host closed the connection]
mindCrime_ has quit [Ping timeout: 268 seconds]
nanozz has joined #lisp
TheWild has joined #lisp
nanoz has quit [Ping timeout: 246 seconds]
idlus has quit [Ping timeout: 256 seconds]
idlus_ has joined #lisp
zaquest has joined #lisp
idlus has joined #lisp
idlus_ has quit [Ping timeout: 256 seconds]
deng_cn has quit [Quit: deng_cn]
cosimone has joined #lisp
shka_ has joined #lisp
orivej has joined #lisp
dddddd has joined #lisp
scymtym has joined #lisp
wigust has joined #lisp
wigust has quit [Client Quit]
fckit has joined #lisp
wigust has joined #lisp
thindil has joined #lisp
nanozz has quit [Ping timeout: 245 seconds]
orivej has quit [Ping timeout: 252 seconds]
mooshmoosh has quit [Read error: Connection reset by peer]
akoana has joined #lisp
mooshmoosh has joined #lisp
scymtym has quit [Remote host closed the connection]
Josh_2 has joined #lisp
varjag has joined #lisp
scymtym has joined #lisp
cosimone has quit [Quit: WeeChat 2.3]
random-nick has quit [Ping timeout: 255 seconds]
fckit has quit [Quit: Leaving]
akoana has left #lisp [#lisp]
nanoz has joined #lisp
mrak has joined #lisp
<phoe> fe[nl]ix: I think the split-sequence release can be made now
<phoe> the PR is up and waiting
random-nick has joined #lisp
idlus has quit [Ping timeout: 256 seconds]
gabr has joined #lisp
anamorphic has joined #lisp
idlus has joined #lisp
nanoz has quit [Quit: Leaving]
caltelt has joined #lisp
X-Scale has quit [Ping timeout: 246 seconds]
andrei-n has joined #lisp
wxie has joined #lisp
wxie has quit [Quit: Bye.]
elazul_ has quit [Ping timeout: 246 seconds]
t58 has joined #lisp
X-Scale has joined #lisp
vaartis has joined #lisp
<vaartis> ay
<minion> vaartis, memo from pjb: not lisp GC, because of limitations of C, but there are several garbage collectors that work with C: BoehmGC, https://www.hboehm.info/gc/ (just try to link with -lgc it's probably already here), MPS https://www.ravenbrook.com/project/mps/ and others.
<vaartis> pjb: yeah, i've heard of them, but i think i need to recompile the library to use them, right?
v88m has quit [Remote host closed the connection]
<vaartis> so, there's a strange problem, i create a (defmethod (setf x) ...) but it does not seem to export
v88m has joined #lisp
<vaartis> how do i export a method like that
anamorphic has quit [Ping timeout: 245 seconds]
<flip214> just export the symbol X, SETF would be CL:SETF anyway
<vaartis> somehow it doesn't seem to work
<vaartis> just (namespace:x ...) works, i have a method with that name
thindil has left #lisp ["User left"]
<vaartis> but (setf (napespace:x object)) doesnt..
<vaartis> The function (COMMON-LISP:SETF <namespace>:X) is undefined.
elderK has quit [Quit: Connection closed for inactivity]
Zaab1t has joined #lisp
idlus has quit [Ping timeout: 256 seconds]
cosimone has joined #lisp
<fivo> When people define a second system in a .asd, it will mostly be just a testsystem?
<flip214> vaartis: is there a GF (SETF X)?
<fivo> Or do people sometimes define multiple systems in a .asd?
<vaartis> flip214: what does "gf" mean
<flip214> a generic function
<flip214> a simple (EXPORT 'X) works for me
<vaartis> well yeah, i wrote how did did it a little earlier
<vaartis> (defmethod (setf x) (x-arg class-that-has-x) ...)
<vaartis> it works fine if i define it interactively
<vaartis> it just doesnt seem to define when loding with asdf
elazul has joined #lisp
<flip214> how do you export? via DEFPACKAGE or with an explicit EXPORT call?
<vaartis> export call
<vaartis> it's autogenerated
idlus has joined #lisp
<vaartis> (progn
<vaartis> (progn
<vaartis> ...
<vaartis> (progn
rixard has joined #lisp
<vaartis> (defmethod (setf x) (x (o specializer))
<vaartis> (setf (class-x o) x))
<vaartis>
<vaartis> (export 'x))))
<vaartis> this is what it macroepands to
<davve> is car/cdr common across lisps?
<rixard> What do you mean? If they’re available in pretty much all Lisps? Then, yes.
<vaartis> i think it existed since the first lisp mashines
<davve> caar cdaar etc. i find it very confusing :(
<jackdaniel> davve: just don't use them
<flip214> vaartis: and X isn't exported when loading that file via ASDF?
<flip214> are the dependencies correct?
<davve> jackdaniel: but i would like to learn
<jackdaniel> use (first (first foo)) and (rest (first (first foo)))
<jackdaniel> using cddaadaar is unreadable
<vaartis> flip214: it's exported, i can use the (x object) functions (a getter basically), but cannot use (setf (x object) value) (a setter)
<davve> do the letters mean anything though?
<rixard> davve: it’s very simple: read caddr from left to right as car cdr cdr. Just focus on the order of a and d.
<beach> davve: Contents of Address part of Register, and Contents of Decrement part of Register.
<beach> davve: IBM instruction names.
<davve> oh wow
<flip214> vaartis: and what's the specific error you get? care to share a paste?
<vaartis> uh.. it just started working i think????
<vaartis> i didnt do anything
<vaartis> what the..
<vaartis> what ;-;
v88m has quit [Read error: Connection reset by peer]
v88m has joined #lisp
quazimodo has quit [Ping timeout: 246 seconds]
<vaartis> sorry for the bother
<flip214> no problem, that's how this universe works
<flip214> "did you try turning it off and on again"
<flip214> "well, the next hotfix will patch that"
<flip214> "oh, that's a special feature"
<vaartis> actually before that i restarted several times and nothing changed
<vaartis> then i uh, the only thing i can think of i removing a single space
<vaartis> to indent
quazimodo has joined #lisp
<vaartis> maybe i didnt save the file or something??? and then saved it when indenting
<vaartis> and that triggered a rebuild
<vaartis> so it worked..
<vaartis> oh well
<flip214> "some things never change"
<vaartis> oh well
<flip214> well, good to hear that it works now
<vaartis> yeah~
pierpal has joined #lisp
<beach> davve: The good news is that CAR and CDR are not used very much at all. Even less so with more complicated combinations of them.
serviteur has joined #lisp
rixard has quit [Quit: (exit)]
zooey has quit [Remote host closed the connection]
zooey has joined #lisp
FreeBirdLjj has joined #lisp
<phoe> beach: wait a second, car/first and cdr/rest tend to be used somewhat often when you play with conses
<beach> phoe: Sure, FIRST, SECOND, ..., REST are used for lists.
<phoe> it's CAAR, CADR, CDAR, CDDR, CAAAR and family that I'd call seldom used - I'd say that it's better to do destructuring-bind instead
<phoe> oh right, that's for lists though
<beach> CONSes are not used very often. So CAR/CDR are not used very often.
<phoe> I see what you mean - yes, lists are more often used than raw conses
<beach> Yes, much mnore.
<beach> more.
mrak has quit [Read error: Network is unreachable]
pierpal has quit [Ping timeout: 258 seconds]
keep_learning_M has quit [Quit: This computer has gone to sleep]
anamorphic has joined #lisp
rixard has joined #lisp
serviteur has quit [Remote host closed the connection]
rixard has quit [Client Quit]
<beach> davve: What is it that you would like to learn?
elazul has quit [Ping timeout: 255 seconds]
<davve> beach: tried to get a handle on the nominclature. it is a bit clearer now and i've moved on :) will have to refer to the manual/fumbling around in the repl if i ever need anything more than car/cdr
<beach> davve: OK. Just so you know, this channel is dedicated to Common Lisp. I am saying that because your first question hinted that you hadn't made a choice yet.
<davve> i am reading land of lisp and sicp (sicp before bed cus it puts me to sleep)
<davve> oh i have clisp installed and trying out stuff
<beach> OK, Land of Lisp is using Common Lisp and SICP is using Scheme.
<beach> CLISP is but one implementation of the Common Lisp language.
<beach> And not the one that is most common among #lisp participants.
<davve> oh, which one is?
<beach> My guess is SBCL, then perhaps CCL, then probably ECL.
<beach> But for SBCL you also need SLIME or something similar, because its REPL is very basic.
<beach> Most people here use SLIME.
idlus has quit [Ping timeout: 256 seconds]
<jackdaniel> davve: rule of a thumb: for darwin pick ccl, for linux pick sbcl, for linking against existing applications with C ABI / Android use ECL
<jackdaniel> minion: tell davve about portacle
<minion> davve: portacle: Portacle is a complete IDE for Common Lisp that you can take with you on a USB stick https://shinmera.github.io/portacle/
<andrei-n> Hello. Is it possible to debug multithreaded code with SLIME?
elazul has joined #lisp
<davve> guess I will go with sbcl then
<davve> is this the slime you mean?
<davve> aur/slime 2.23-1 (16, 0,040233) The Superior Lisp Interaction Mode for Emacs
<beach> Yes, but you install it either automatically if you use Portacle, or using Quicklisp.
<beach> Er, I mean, if you install Portacle, you already have everything you need. If you choose to install things separately, you would install Quicklisp first, and then install SLIME using Quicklisp.
<davve> ah I already have a quite ellaborate emacs setup, I'll try the melpa package first
<davve> M-x slime was pretty nice indeed :)
<davve> now i don't have to have a terminal open for common lisp, neat !
<beach> Right.
<loke`> davve: Best way is to use Quicklisp. Install quicklisp-slime-helper
<Josh_2> gotta say portacle is a bit annoying because of paredit
<loke`> Josh_2: Is paredit missing?
<Josh_2> no, It's on by default
<loke`> Not having paredit would be annoying indeed.
<Josh_2> I don't use it personally
<anamorphic> can't live without it
<minion> anamorphic, memo from aeth: use the portable with-float-traps-masked in the library float-features https://github.com/Shinmera/float-features
<beach> loke`: It is confusing to newbies that it's the default.
<Josh_2> but if someone has never written cl surely those strange keybindings would be annoying
<loke`> beach: Fair enough. It does take a bit of work to learn. But after you have, one never wants to stop using it.
<beach> loke`: Possibly. But I helped a newbie the other day who made many mistakes about placing parentheses, and then could not erase them.
<Josh_2> that's the fun of paredit...
<Josh_2> apparently backspace is too good for paredit xD
<beach> Experienced programmers don't make many mistakes like that.
<loke`> Josh_2: The point of paredit is that you always have everything balanced. if you have (|) (where pipe is the cursor) and press backspace, it will indeed go away
<anamorphic> anyone know if PCLOS is any good?
<Josh_2> if you have "" and then paste something that is surrounded by " " good luck clearing either of them xD
<beach> davve: The way I work is that I split the screen with C-x 3. Then I have my source code in a buffer in one window, and the SLIME REPL in the other.
<Josh_2> ^
<loke`> Josh_2: yeah. Paredit is stupid when you paste unbalanced text
Oladon has joined #lisp
<beach> davve: That way, I can edit my code and hit C-c C-c to transmit it to the Common Lisp system, then switch windows to test it.
<loke`> Learning about C-S-SPC helps
<Josh_2> not using it helps as well
<loke`> Josh_2: not using it causes wayy too much headache. Looking back at how I used to edit Lisp before Paredit makes me shudder
TheWild has quit [Ping timeout: 268 seconds]
<beach> anamorphic: What is PCLOS?
<Josh_2> Perhaps I will try it out personally, but rainbow parens makes it pretty easy to get parens correct
andrei-n has quit [Read error: Connection reset by peer]
Krystof has joined #lisp
<loke`> I've tried rainbow. What colourscheme do you use? It was too hard for me to see the difference between the individual colours.
<loke`> perhaps it's because I use a very small font
<Josh_2> I use the rainbow colourscheme :P
<davve> beach: C-c C-c worked for me too. great tip thanks
<beach> davve: Anytime.
andrei-n has joined #lisp
<loke`> Josh_2: Oh. I see. dark background
<loke`> with white background the default colourscheme is not nice.
<Josh_2> ahh right
<loke`> and I need white background, since my eyes are quite sensitive
<Josh_2> ahh
<Josh_2> It's just preference for me
idlus has joined #lisp
<anamorphic> beach, it's a clos persistence thing from the 80's https://www.hpl.hp.com/techreports/91/HPL-91-182.html
<beach> Oh, I see.
elazul has quit [Ping timeout: 248 seconds]
caltelt has quit [Ping timeout: 250 seconds]
aozt has quit [Quit: leaving]
FreeBirdLjj has quit [Remote host closed the connection]
gabr has quit [Remote host closed the connection]
gabr has joined #lisp
keep_learning_M has joined #lisp
keep_learning_M has quit [Client Quit]
vms14 has joined #lisp
<phoe> anamorphic: is its source available anywhere?
<pjb> vaartis: no, you don't need to recompile C code to have it benefit from the garbage collector.
<pjb> vaartis: the garbage collectors replace at link-time the malloc/free routines, so that basically free doesn't do anything and malloc calls the garbage collector when there's no free memory, before getting some more from the kernel.
<pjb> vaartis: the only thing that is special to C, is the way the register and memory are scanned, and the fact that we cannot distinguish an integer from a pointer, so it is possible that some memory is not freed, just because you have 52914049035197 in a variable.
<pjb> or 4.48659e-37
<phoe> wait, that's a matter of distinguishing floats from pointers
<pjb> vaartis: that, and the fact that the gc needs to consider all the non-heap memory as the root set. (CL compilers may help the GC by indicating a smaller root set).
<pjb> phoe: which is not possible in C.
<phoe> I see.
<pjb> (with usual C implementations).
<pjb> Even character strings, or arrays of shorts, etc may be interpreted as pointers.
idlus has quit [Remote host closed the connection]
idlus has joined #lisp
<jackdaniel> there is a way to distinguish them starting from C11 with _Generic operator
<jackdaniel> at list at the compilation time by the c compiler
<jackdaniel> (and nothing prevents you from writing a macro which takes a variable and returns its type as a string)
anamorphic has quit [Ping timeout: 248 seconds]
anamorphic has joined #lisp
<andrei-n> Hello? No one can answer me?
<pjb> andrei-n: you would have to ask a question first!
<pjb> We're not telepaths.
<andrei-n> pjb, sorry. My question was: Is it possible to debug multithreaded code with SLIME?
<pjb> Yes, it is.
<andrei-n> How does it work?
pierpal has joined #lisp
<pjb> (ql:quickload :bordeaux-threads) (bt:make-thread (lambda () (loop for i below 10 when (= 5 i) do (break))) :name "debugged thread")
<Josh_2> threading in CL isn't a complete pita :P
<Josh_2> Can't say I've done threading in other languages but It's pretty easy to start and kill them again because of the repl
scymtym has quit [Ping timeout: 248 seconds]
<Josh_2> or to recompile things on the fly so they just change as they go
rippa has joined #lisp
TheWild has joined #lisp
rixard has joined #lisp
<phoe> andrei-n: enter the debugger inside the thread
<phoe> it'll show up in SLIME with the condition and respective thread's stack
rixard has quit [Client Quit]
oni-on-ion has joined #lisp
lumm has joined #lisp
<andrei-n> pjb, Josh_2 phoe thanks. Then I think I'll be able to follow the semaphore book with CL.
benkard has joined #lisp
mulk has quit [Ping timeout: 246 seconds]
benkard is now known as mulk
v88m has quit [Read error: Connection reset by peer]
v88m has joined #lisp
mindCrime_ has joined #lisp
<anamorphic> eh... trying to use COM from SBCL turns out to be more difficult than expected
<phoe> anamorphic: I know some people on the Lisp Discord who were attempting the same thing
<phoe> they might be able to help you
<anamorphic> oh cool
<andrei-n> There is a discord??
<phoe> yes, there is one
<Josh_2> IRC is better than Discord xD
<phoe> I don't think #lisp is a place for discussing whichever chat service is the best
<Josh_2> sorry #lisp is better than Lisp discord y33t
<jackdaniel> in ansi-tests there is a test called minus.6 which implies, that (- #c(1.0 0.0)) must be eql to (- 0 #c(1.0 0.0)), I don't know where this negation and (- 0 ...) equivalence come from (especially with relation to signed zeros), do I miss something in the standard?
<jackdaniel> or maybe the test is invalid?
<jackdaniel> (ftr: negation imo should be #c(-1.0 -0.0) and substraction shold be #c(-1.0 0.0))
<jackdaniel> given floats have signed zeros
Zaab1t has quit [Quit: bye bye friends]
<flip214> jackdaniel: oh no, that starts the discussion whether -0.0 equals (for some given value of equal!) 0.0...
<jackdaniel> flip214: I'm talking about EQL, and -0.0 is not EQL to 0.0 if zeros are signed
<jackdaniel> it is =
<flip214> see? the discussion already started!!!! ;)
<jackdaniel> either way I'd appreciate pointers to that, because either I have to fix this test in ansi-tests or my implementation
<jackdaniel> (i.e if "it is not defined whenever they are EQL", then test is invalid)
oni-on-ion has quit [Read error: Connection reset by peer]
<jackdaniel> or it could be that I intepret something wrong (i.e something else fails and I've drawn a wrong conclusion)
vms14 has quit [Quit: WeeChat 2.3]
<andrei-n> phoe, sorry, I've been curious... I'll ask about it later.
random-nick has quit [Ping timeout: 244 seconds]
oni-on-ion has joined #lisp
kenu has joined #lisp
random-nick has joined #lisp
bonz060 has joined #lisp
kenu has quit [Ping timeout: 245 seconds]
<bonz060> Hi guys. I'm following the book Practical Common Lisp from Gigamonkeys and I'm stuck on Chapter 19(building a test framework). Here's what I'm running: https://pastebin.com/U54pn2GT and here's the stack trace: https://pastebin.com/9ifUk8tD ; I don't know why the function `combine-results` does not work. I'm using ANSI Common Lisp. Any help figuring out what I'm doing wrong would be highly appreciated :)
<bonz060> *Chapter 09
<flip214> bonz060: which implementation are you using?
mindCrime_ has quit [Ping timeout: 245 seconds]
X-Scale has quit [Quit: Try HydraIRC -> http://www.hydrairc.com <-]
<bonz060> flip214: I'm using GNU Clisp
<flip214> bonz060: in combine-results, do you have a typo? "serf" => "setf"?
angavrilov has quit [Remote host closed the connection]
oni-on-ion has quit [Remote host closed the connection]
<bonz060> flip214: Shoot, That typo somehow got introduced when pasting to pastebin. Regardless, even after removing the typo, I'm still getting `LET: variable RESULT has no value`
Arcaelyx has quit [Ping timeout: 252 seconds]
<phoe> andrei-n: it's all good, I was responding to Josh_2
dale has joined #lisp
<Josh_2> *dabs*
<flip214> bonz060: what's the error message now? still the same?
random-nick has quit [Read error: Connection reset by peer]
<flip214> bonz060: do you have the macro WITH-GENSYMS available?
<flip214> if yes, then the code works for me.
dale has quit [Quit: dale]
<bonz060> flip214: What lisp implementation are you using? Also, how do you know whether you have a macro?
<Josh_2> You should have written with-gensyms
<Josh_2> It's from a previous chapter in the book
random-nick has joined #lisp
anamorphic has quit [Ping timeout: 244 seconds]
vms14 has joined #lisp
<bonz060> Josh_2: Thanks... That fixed it for me :)
<pjb> jackdaniel: clhs - seems to say that (- x) is not (- 0 x).
<pjb> jackdaniel: notably, it give the example: (eql (- 0.0) -0.0) => true
<jackdaniel> right, I was just about to write, that I misinterpreted the failure after all
<jackdaniel> (examples are not normative)
<andrei-n> phoe, could you give me the link then?
<pjb> jackdaniel: IMO, the implication of the test is not valid.
<jackdaniel> I've misinterpreted the test itself
<pjb> ok
<jackdaniel> problem is the result of (abs -0.0)
<pjb> This will be 0.0
<jackdaniel> abs description is in disagreement with that
<jackdaniel> but I need to go now
<jackdaniel> pjb: thanks a lot for looking into it!
<pjb> well it specifies the result as a non-negative real. Is -0.0 negative?
idlus has quit [Ping timeout: 256 seconds]
<ggole> Wait, how does the description of eql disagree with that?
<ggole> Er, of abs
<ggole> abs returning a float with a negative sign bit would be pretty strange
<pjb> ggole: (abs -0.0) returns -0.0 in ecl.
<pjb> It should return 0.0
<ggole> That sounds like a bug
<pjb> Yes.
<pjb> The problem is that (< -0.0 0.0) is false.
<pjb> so (defun abs (x) (typecase x (float (if (< x 0.0) (- x) x)) …)) is wrong.
<pjb> You have to either use a IEEE754 opertor, or to test explicitely for (eql x -0.0).
<ggole> Or mask off the sign bit directly.
<jackdaniel> example says contrary, but they are no normative
<jackdaniel> so indeed ecl bug
<pjb> Well, this is compounded by the fact that ecl -> gcc so we're talking float and double, not ieee754 or bits.
<jackdaniel> fix is very easy
<jackdaniel> so nws
<jackdaniel> see you o/
idlus has joined #lisp
cosimone has quit [Quit: WeeChat 2.3]
Jesin has quit [Quit: Leaving]
drot has quit [Ping timeout: 244 seconds]
drot has joined #lisp
idlus has quit [Ping timeout: 256 seconds]
<sjl> anyone used cffi-grovel to grovel for structs before? I'm trying to grovel for winsize in sys/ioctl.h but am getting error: ‘winsize’ undeclared (first use in this function)
meepdeew has joined #lisp
marusich has joined #lisp
<sjl> Ugh, I needed (cstruct winsize "struct winsize") instead of (cstruct winsize "winsize"). cffi-grovel sure isn't documented very well.
puchacz has joined #lisp
Lord_of_Life_ has joined #lisp
idlus has joined #lisp
Lord_of_Life has quit [Ping timeout: 255 seconds]
Lord_of_Life_ is now known as Lord_of_Life
anamorphic has joined #lisp
andrei-n has quit [Remote host closed the connection]
Jesin has joined #lisp
makomo has quit [Quit: WeeChat 2.4]
idlus has quit [Ping timeout: 256 seconds]
mindCrime_ has joined #lisp
meepdeew has quit [Remote host closed the connection]
cyberoctopi has quit [Ping timeout: 252 seconds]
Arcaelyx has joined #lisp
v88m has quit [Read error: Connection reset by peer]
v88m has joined #lisp
Jesin has quit [Quit: Leaving]
idlus has joined #lisp
anewuser has joined #lisp
vms14 has quit [Quit: WeeChat 2.3]
vms14 has joined #lisp
idlus has quit [Ping timeout: 256 seconds]
random-nick has quit [Read error: Connection reset by peer]
random-nick has joined #lisp
pierpal has quit [Quit: Poof]
pierpal has joined #lisp
bonz060 has quit [Ping timeout: 245 seconds]
anamorphic has quit [Ping timeout: 258 seconds]
idlus has joined #lisp
serviteur has joined #lisp
cyberoctopi has joined #lisp
<phoe> minion: memo for andrei-n: google "lisp discord", it's the first Reddit link.
<minion> Remembered. I'll tell andrei-n when he/she/it next speaks.
cyberoctopi has quit [Ping timeout: 258 seconds]
Oladon has quit [Quit: Leaving.]
idlus has quit [Ping timeout: 256 seconds]
<pjb> phoe: it would be better to write a discord<->irc gateway.
<phoe> pjb: AFAIR #lisp in general doesn't want it merged into here.
<phoe> These gateways already exist.
<phoe> As in, the code for them is written and ready to use.
<sjl> please god no. those discord/gitter/slack/etc gateways are always godawful
<vms14> stumpwm is nice <3
<vms14> I guess every lisper should at least try it
terpri has quit [Remote host closed the connection]
orivej has joined #lisp
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
Jesin has joined #lisp
cyberoctopi has joined #lisp
libertyprime has quit [Ping timeout: 252 seconds]
<LdBeth> It sucks
cyberoctopi has quit [Remote host closed the connection]
cyberoctopi has joined #lisp
<LdBeth> First of all, it assumes SBCL
<LdBeth> Second, I don’t like tilling window
<LdBeth> Because I have a small screen
<Josh_2> I don't know who thought the default font for Stumpwm was a good font but they must be blind
<LdBeth> Strictly it’s not its fault cause otherwise there’ll be no font display at all
hhdave has joined #lisp
hhdave has quit [Ping timeout: 246 seconds]
gjvc has joined #lisp
<edgar-rft> I'm using FVWM as an an overlapping window manager because I'm often doing graphics stuff, and Emacs when I want tiled text windows :-)
orivej has quit [Ping timeout: 248 seconds]
vlatkoB has quit [Remote host closed the connection]
idlus has joined #lisp
idlus has quit [Ping timeout: 256 seconds]
idlus has joined #lisp
ggole has quit [Quit: Leaving]
<vms14> LdBeth: :O
<vms14> I like it
<vms14> and if you don't like it, it's written in lisp
<vms14> you can change it
<edgar-rft> I'm quite sure hat it's dead easy to change stumpwm into an overlapping window manager :-)
<vms14> I like cwm cause it's stacking, but it seems you can have some stacking behavior wit floating groups
<vms14> with*
svillemot has quit [Quit: ZNC 1.7.2+deb2 - https://znc.in]
cosimone has joined #lisp
svillemot has joined #lisp
cosimone has quit [Client Quit]
<vms14> and does not assume sbcl, or at least I see it works with clisp + new clx
<vms14> but It has no sense to run it on clisp if you can have sbcl
cosimone has joined #lisp
cosimone has quit [Client Quit]
<LdBeth> I use CCL
<vms14> idk then
<LdBeth> And see CLFSWM
<vms14> but for small screens you can use just windows instead of frames
<LdBeth> IT’S WAY BETTER IN CENCEPT
<vms14> C-t [0-9]
libertyprime has joined #lisp
<edgar-rft> There's also the Eclipse window managr, written by some of beach's former students https://common-lisp.net/project/eclipse/screenshots.shtml
TheWild has quit [Quit: TheWild]
* LdBeth uploaded an image: ima_17f383f.png (402KB) < https://matrix.org/_matrix/media/v1/download/matrix.org/NksqZViBlKIwltLczgMRREEw >
* LdBeth uploaded an image: ima_8ece3a1.png (107KB) < https://matrix.org/_matrix/media/v1/download/matrix.org/qfRWqarBDakUCdFLLHxbSsqi >
pierpal has quit [Ping timeout: 246 seconds]
parjanya has quit [Remote host closed the connection]
random-nick has quit [Read error: Connection reset by peer]
<edgar-rft> LdBeth: I always thought FVWM is dinosaur software but I see you're using XEmacs :-)
idlus has quit [Ping timeout: 256 seconds]
<aeth> We found the last XEmacs user! :-)
<aeth> I remember when there was a choice between the two, but I didn't really get into Lisp before GNU Emacs started taking all of the good features from XEmacs after XEmacs development kind of stopped.
<fouric> would anyone have any idea why, when i do terminal control with cl-charms, *standard-output* is bound to a #<SYNONYM-STREAM :SYMBOL SB-SYS:*STDOUT* {1000010A43}> (which incorrectly causes output printed with e.g. FORMAT to be manged and displayed in the terminal) but then re-bound to a #<SWANK/GRAY::SLIME-OUTPUT-STREAM {1004C5AAA3}> after i re-invoke the application a second time?
vaartis has quit [Ping timeout: 252 seconds]
karlosz has joined #lisp
vms14 has quit [Quit: WeeChat 2.3]
igemnace has quit [Quit: WeeChat 2.4]
cyberoctopi has quit [Ping timeout: 246 seconds]
puchacz has quit [Quit: Konversation terminated!]
Younder has quit [Ping timeout: 246 seconds]
zooey has quit [Remote host closed the connection]
zooey has joined #lisp
terpri has joined #lisp
fivo has quit [Quit: WeeChat 1.9.1]
DGASAU has quit [Read error: Connection reset by peer]
idlus has joined #lisp
shka_ has quit [Ping timeout: 258 seconds]
asdf_asdf_asdf has joined #lisp
varjag has quit [Ping timeout: 252 seconds]
<sukaeto> fwiw, I use stumpwm exclusively in floating mode. I wrote some routines to shove windows around on the screen/set their geometry so that I don't have to use the mouse.
lumm has quit [Read error: Connection reset by peer]
gjvc has quit [Quit: Lost terminal]
MichaelRaskin has quit [Quit: MichaelRaskin]
DGASAU has joined #lisp
moldybits has quit [Quit: WeeChat 2.4]
torbo has joined #lisp
anewuser has quit [Ping timeout: 245 seconds]
<serviteur> sukaeto: how do you have floating mode in stump?
asdf_asdf_asdf has quit [Remote host closed the connection]
nowhere_man has quit [Read error: Connection reset by peer]
<serviteur> sukaeto: can you share your dotfile?
makomo has joined #lisp
nowhere_man has joined #lisp
elderK has joined #lisp
ltriant has joined #lisp
nowhere_man has quit [Ping timeout: 246 seconds]
nowhere_man has joined #lisp
wxie has joined #lisp
rumbler31 has joined #lisp
dale has joined #lisp
wxie has quit [Quit: wxie]
wxie has joined #lisp
wxie has quit [Client Quit]