<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
<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">
<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>
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.
<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
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?
<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?
<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
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]