<p_l>
Aurora_v_kosmose: the "shocking!" revelation to HP was that customers didn't want to buy Itanium :>
<p_l>
to the point that they had to restart Alpha production
<Aurora_v_kosmose>
hah
TheInformaticist has joined #lisp
<p_l>
end result was that outside of supercomputing, Itanium was left with two groups of customers, the people who somehow ended up running HP-UX (I might have actually encountered a case few years ago), and people running OpenVMS who for some reason couldn't get alphas or needed something specific to I64 systems
<p_l>
and the HP-UX group was dominated by pure Oracle hosting
contrapunctus has left #lisp ["Disconnected: Replaced by new connection"]
contrapunctus has joined #lisp
<aeth>
I can't believe no one has ported SBCL to Itanium yet
iissaacc has joined #lisp
edgar-rft has quit [Quit: Leaving]
TheInfor` has joined #lisp
TheInformaticist has quit [Ping timeout: 240 seconds]
<p_l>
aeth: Itanium was pretty much dead within few years of actually arriving, and it was half-dead on arrival
<aeth>
Right, my joke is that writing a compiler for Itanium is a job that probably no one here is even capable of doing.
<p_l>
no, that's writing a sufficiently advanced optimizer for Itanium
rtypo has quit [Ping timeout: 260 seconds]
TheInfor` has quit [Quit: ERC (IRC client for Emacs 26.1)]
<TheInformaticist>
OK, this is weird. ERC is automatically signing me into #lisp when I log in (or freenode is). Any idea why?
<Aurora_v_kosmose>
TheInformaticist: Probably ought to ask in #emacs or #lispcafe
edgar-rft has joined #lisp
<TheInformaticist>
#freenode
luckless has quit [Ping timeout: 240 seconds]
luckless has joined #lisp
<Nilby>
The Alpha was the machine that was the fastest the longest in an office that got every new computer, so it was quite far ahead. It was a decent choice to to put Genera on.
<p_l>
Alpha was very clean and modern architecture
<p_l>
at few points too modern
<p_l>
which resulted in the insanity that was I/O on EV3/4/early 5
<loke>
TheInformaticist: ERC saves the channels you're on using customise.
<Aurora_v_kosmose>
I found which lists it uses and passed along the info on #emacs
<p_l>
Alpha was also one of the few "actually Reduced instruction set RISCs"
<Nilby>
Sometimes I think some exec at intel asked some exec at HP to buy alpha and kill it so they didn't have to worry anymore.
<p_l>
Nilby: killing off Alpha happened under Compaq
<p_l>
Compaq's purchase of DEC was... complicated
<p_l>
best summary I figured ever was that Compaq was very happy being intel's sock puppet and figured being competitors wasn't in their plans and happily folded when intel announced their "RISC killer"
<p_l>
then, after merger with HP, everyone found out that Chipzilla released a lame duck, and HP was forced by the market to restart production of last alpha design
<p_l>
the only remaining non-HP itanium vendor quickly turned out to be SGI, and they ended up both dumping it, moving to Xeons, and being bought by shitty company (Rackable)
<Nilby>
p_l: Interesting. Thank you for the history. I always wondered a bit about it.
<p_l>
Nilby: major groups involved in Alpha development were taken by surprise, among them Microsoft and Compaq (formerly DEC) "NT on Alpha" team
luckless has quit [Ping timeout: 240 seconds]
<Nilby>
It always seemed suspect how such a good chip like Alpha lost to the lame Itanium.
<p_l>
a lot of the rest of the industry got scared of the chipzilla
<Nilby>
They are/were a bit scary
<p_l>
well, last few years showed they are a colossus on rather weak legs
luckless has joined #lisp
<p_l>
not only process updates, the real strength behind intel, failed, but also various dirty tricks they picked up to keep the precious single-core speeds up ended up backfiring spectacularly
<Nilby>
indeed
<p_l>
the CPUID/rdrand failure was I think most spectacular
<Nilby>
I guess we can be proud that sbcl went from alpha to risc-v, skipping itanium
<p_l>
not sure if they finally found a way to fix it without horrible slowdown
<Nilby>
yeah, i now regard the intel chips with a bit of suspicion, and wish they would just let us program the microcode
<p_l>
the microcode isn't really that useful given how often it changes
prumnopytis has joined #lisp
<p_l>
it's not like access to CMS on Transmeta or its equivalent on nVidia Denver chips
<Nilby>
and I guess then we would see all the bugs/misfeatures
<p_l>
Nilby: you'd need full knowledge of the chip to figure them out
<p_l>
especially since it's not guaranteed that everything is microcode
<p_l>
and the microcode engine itself is pipelined, iirc
<prumnopytis>
Hey, does anyone know about using GPGME's cl [cffi] ? I found I wasn't able to successfully asdf load it under sbcl 2.0.5
TheInformaticist has quit [Remote host closed the connection]
<prumnopytis>
I'm not really sure how to debug asdf's COMPILE-FILE-ERROR. it caches a fasl, but I'm not sure what it wants to tell me.
<Nilby>
p_l: maybe someday they'll do microscopy to vhdl/simulator and we'll see, but in the meantime I'm glad to be able to bring any chip to a crawl with CL.
Alfr has quit [Quit: Leaving]
<prumnopytis>
Also sorry to come late to a party but Nilby are you talking about running common lisp on some interesting chips? I was ignoring some research I should probably read somewhere and it sounds like you might be talking about that.
<p_l>
well, on the interesting and actually powerful front is recent revival of SBCL on power, including proper 64bitness iirc
<p_l>
hopefully the issues with POWER10's openness are solved and RCS will make POWER10 systems too :<
<aeth>
POWER's problem is that it's too expensive. Billion dollar companies will gladly rely on FOSS libraries written by hobbyists, but those hobbyists probably only have access to x86-64 and ARM.
<p_l>
aeth: RCS made computers in the same price range as x86-64 workstations (actual workstations, that is)
contrapunctus has left #lisp ["Disconnected: closed"]
<p_l>
anyway, had some project ideas that would have worked great with RCS hw
<p_l>
but I'm in no position to even pitch them
contrapunctus has joined #lisp
Necktwi has quit [Ping timeout: 240 seconds]
Jeanne-Kamikaze has quit [Quit: Leaving]
<aeth>
p_l: Yeah, actual workstations. Meanwhile, you can get a budget 12-core not-quite-workstation for the price of a 3900X.
<p_l>
aeth: true. That's why the projects I mentioned would have significant benefits related to not having x86 hollywood&netflix-encumbered cpus
luckless has quit [Ping timeout: 240 seconds]
Necktwi has joined #lisp
luckless has joined #lisp
<prumnopytis>
Interesting but not exactly my area of hardware design. So there was a 2020 tech show debut of some scalable parallel processing-y machine (POWER10).
<prumnopytis>
My GPGME quest:
<prumnopytis>
./gpgme-config --have-lang="cl"
<prumnopytis>
> 0 (indicating succes)
bitmapper has quit [Quit: Connection closed for inactivity]
davepdotorg has joined #lisp
davepdotorg has quit [Ping timeout: 240 seconds]
mindCrime has quit [Ping timeout: 260 seconds]
bitmapper has joined #lisp
toorevitimirp has joined #lisp
<sm2n>
prumnopytis, from what I recall, when I looked into it a while back, gpgme's cl bindings are unmaintained for a long time and have bitrotted
fortitude has quit [Ping timeout: 240 seconds]
<prumnopytis>
Thanks sm2n
<prumnopytis>
I found that gentoo's package management has stuck to a somewhat ancient version of sbcl, but allegedly also has gpgme [and gpg-error] for cl for that. I wonder if that's why that's like that.
<prumnopytis>
sm2n: I mean that's the fallback I was planning, but everywhere in gpgme's docs it said "no, don't do specifically that use gpgme" so I was wondering if I was just insufficiently powerful with asdf
<prumnopytis>
gpgme as a C library seems to be totally fine, so I was hoping to do something a little more formal than run-programming gpg. But for now I shall just do as you say
Lord_of_Life_ has joined #lisp
Lord_of_Life has quit [Ping timeout: 256 seconds]
Lord_of_Life_ is now known as Lord_of_Life
davepdotorg has joined #lisp
edgar-rft has quit [Quit: Leaving]
davepdotorg has quit [Ping timeout: 240 seconds]
<beach>
Good morning everyone!
davepdotorg has joined #lisp
Necktwi has quit [Ping timeout: 265 seconds]
<Nilby>
Good morning
davepdotorg has quit [Ping timeout: 240 seconds]
jesse1010 has quit [Ping timeout: 265 seconds]
Necktwi has joined #lisp
yamashitatan has joined #lisp
skapata has quit [Quit: Leaving]
Fare has quit [Ping timeout: 240 seconds]
krid` has joined #lisp
orivej has quit [Ping timeout: 246 seconds]
krid has quit [Ping timeout: 246 seconds]
gravicappa has joined #lisp
Bourne has quit [Ping timeout: 260 seconds]
mathrick has quit [Quit: Leaving]
mathrick has joined #lisp
mathrick_ has joined #lisp
mathrick has quit [Ping timeout: 240 seconds]
shifty has quit [Ping timeout: 260 seconds]
davepdotorg has joined #lisp
davepdotorg has quit [Remote host closed the connection]
mathrick_ has quit [Ping timeout: 256 seconds]
mathrick_ has joined #lisp
Inline has joined #lisp
fortitude has joined #lisp
edgar-rft has joined #lisp
ggole has joined #lisp
clintm has quit [Remote host closed the connection]
yamashitatan has quit [Quit: WeeChat 2.3]
bilegeek has quit [Quit: Leaving]
ex_nihilo has quit [Quit: Leaving]
davepdotorg has joined #lisp
iissaacc has quit [Ping timeout: 260 seconds]
borei has joined #lisp
<borei>
good morning/good afternoon
<Inline>
morning
davepdotorg has quit [Ping timeout: 240 seconds]
Stanley00 has quit [Read error: Connection reset by peer]
Stanley00 has joined #lisp
Oladon has quit [Quit: Leaving.]
IPmonger_ has joined #lisp
iissaacc has joined #lisp
IPmonger has quit [Ping timeout: 260 seconds]
ibinderwolf has joined #lisp
davepdotorg has joined #lisp
davepdotorg has quit [Remote host closed the connection]
toorevitimirp has quit [Remote host closed the connection]
toorevitimirp has joined #lisp
Cymew has joined #lisp
jonatack has quit [Quit: jonatack]
narimiran has joined #lisp
clintm has joined #lisp
davepdotorg has joined #lisp
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
davepdotorg has quit [Ping timeout: 260 seconds]
shifty has joined #lisp
treflip has joined #lisp
borei has quit [Ping timeout: 240 seconds]
Cymew has quit [Ping timeout: 240 seconds]
davepdotorg has joined #lisp
aartaka has joined #lisp
davepdotorg has quit [Ping timeout: 246 seconds]
msk has joined #lisp
krid` has quit [Ping timeout: 240 seconds]
Necktwi has quit [Ping timeout: 240 seconds]
jonatack has joined #lisp
Necktwi has joined #lisp
frgo has quit [Remote host closed the connection]
davepdotorg has joined #lisp
beach has quit [Remote host closed the connection]
Necktwi has quit [Ping timeout: 264 seconds]
Necktwi has joined #lisp
davepdotorg has quit [Ping timeout: 256 seconds]
narimiran has quit [Ping timeout: 256 seconds]
beach has joined #lisp
iissaacc has quit [Remote host closed the connection]
iissaacc has joined #lisp
narimiran has joined #lisp
toorevitimirp has quit [Ping timeout: 265 seconds]
fortitude has quit [Ping timeout: 260 seconds]
greaser|q has quit [Remote host closed the connection]
gaqwas has joined #lisp
Bourne has joined #lisp
frgo has joined #lisp
davepdotorg has joined #lisp
davepdot_ has joined #lisp
Nilby has quit [Read error: Connection reset by peer]
davepdotorg has quit [Ping timeout: 256 seconds]
davepdot_ has quit [Ping timeout: 240 seconds]
gxt has joined #lisp
gxt has quit [Remote host closed the connection]
gxt has joined #lisp
mfiano has quit [Ping timeout: 260 seconds]
jonatack has quit [Ping timeout: 265 seconds]
aartaka_d has joined #lisp
mfiano has joined #lisp
aartaka has quit [Ping timeout: 240 seconds]
<phoe>
hellooooo
<beach>
Hey phoe.
scymtym has quit [Ping timeout: 256 seconds]
<phoe>
hey hi beach
jonatack has joined #lisp
pve has joined #lisp
shka_ has joined #lisp
Bourne has quit [Ping timeout: 240 seconds]
<easye>
Mornin' beach, phoe, all.
<Inline>
morning
liberliver has joined #lisp
jonatack has quit [Quit: jonatack]
jonatack has joined #lisp
msk has quit [Ping timeout: 240 seconds]
nostoi has joined #lisp
davepdotorg has joined #lisp
mathrick_ has quit [Ping timeout: 258 seconds]
davepdotorg has quit [Read error: Connection reset by peer]
davepdotorg has joined #lisp
mathrick has joined #lisp
davepdotorg has quit [Ping timeout: 256 seconds]
hendursaga has quit [Remote host closed the connection]
davepdotorg has joined #lisp
hendursaga has joined #lisp
davepdotorg has quit [Remote host closed the connection]
davepdotorg has joined #lisp
aeth has quit [Ping timeout: 240 seconds]
hendursa1 has joined #lisp
rtypo has joined #lisp
treflip has quit [Ping timeout: 256 seconds]
hendursaga has quit [Ping timeout: 240 seconds]
treflip has joined #lisp
aeth has joined #lisp
zaquest has quit [Quit: Leaving]
zaquest has joined #lisp
davepdotorg has quit [Remote host closed the connection]
contrapunctus has left #lisp ["Disconnected: Replaced by new connection"]
contrapunctus has joined #lisp
davepdot_ has joined #lisp
contrapunctus has left #lisp ["Disconnected: closed"]
contrapunctus has joined #lisp
antoszka_ is now known as antoszka
schweers has joined #lisp
gravicappa has quit [Ping timeout: 246 seconds]
aartaka has joined #lisp
srhm has joined #lisp
galex-713 has quit [Ping timeout: 246 seconds]
prumnopytis has quit [Remote host closed the connection]
treflip has quit [Ping timeout: 265 seconds]
aartaka_d has quit [Ping timeout: 256 seconds]
treflip has joined #lisp
C-16 has quit [Ping timeout: 272 seconds]
C-16 has joined #lisp
galex-713 has joined #lisp
msk__ has joined #lisp
msk__ has quit [Max SendQ exceeded]
msk__ has joined #lisp
scymtym has joined #lisp
mathrick has quit [Ping timeout: 256 seconds]
random-nick has joined #lisp
ted_wroclaw has joined #lisp
madage has quit [Ping timeout: 240 seconds]
mathrick has joined #lisp
madage has joined #lisp
mathrick has quit [Ping timeout: 240 seconds]
jesse1010 has joined #lisp
cosimone has joined #lisp
aartaka_d has joined #lisp
aartaka has quit [Ping timeout: 264 seconds]
aartaka_d has quit [Ping timeout: 256 seconds]
aartaka has joined #lisp
pve has quit [Ping timeout: 240 seconds]
pve has joined #lisp
Bourne has joined #lisp
mathrick has joined #lisp
justache has quit [Remote host closed the connection]
justache has joined #lisp
orivej has joined #lisp
nostoi has quit [Quit: Verlassend]
wxie has joined #lisp
orivej has quit [Ping timeout: 260 seconds]
vms14 has joined #lisp
rippa has joined #lisp
jonatack has quit [Ping timeout: 240 seconds]
Fare has joined #lisp
arpunk has quit [Ping timeout: 256 seconds]
FennecCode has quit [Ping timeout: 244 seconds]
Bourne has quit [Ping timeout: 264 seconds]
wxie has quit [Ping timeout: 244 seconds]
shangul has joined #lisp
<shangul>
What choices do I have for a library similar to Python's requests(HTTP client)? Other than drakma and dexador
<schweers>
I have to admit that I only used drakma a little bit and tried out daxador even more briefly, so I can’t comment on how good these options are
<shangul>
Thanks :)
<pve>
I've used drakma a lot, and have no complaints
<pve>
although I think I did need to wrap it a bit, specifically to bail if a download is too large
<iissaacc>
is there something built in i can use to recursively search a list? I've ended up with a lot of homemade functions that do this
<phoe>
iissaacc: what do you mean by search a list?
<iissaacc>
search for and return a subtree that matches some predicate, like (eq (car subtree) :select)
jonatack has quit [Ping timeout: 256 seconds]
<phoe>
you want to search all CARs and CDRs?
davepdot_ has quit [Remote host closed the connection]
bitmapper has quit [Quit: Connection closed for inactivity]
galex-713_ has joined #lisp
<jmercouris>
iissaacc: you could just flatten the list and then search it
galex-713 has quit [Ping timeout: 272 seconds]
<jmercouris>
it really depends on how often you must search the list, and if the position in the recursive structure is relevant to your needs
cosimone has quit [Read error: Connection reset by peer]
wsinatra has quit [Ping timeout: 256 seconds]
davepdot_ has quit [Remote host closed the connection]
orivej has joined #lisp
wxie has quit [Ping timeout: 265 seconds]
gravicappa has joined #lisp
xantoz has quit [Read error: Connection reset by peer]
iissaacc has quit [Ping timeout: 258 seconds]
treflip has quit [Ping timeout: 240 seconds]
jonatack has joined #lisp
wsinatra has joined #lisp
Stanley00 has quit [Remote host closed the connection]
aartaka has quit [Ping timeout: 246 seconds]
aartaka has joined #lisp
hendursa1 has quit [Quit: hendursa1]
hendursaga has joined #lisp
davepdotorg has joined #lisp
davepdotorg has quit [Read error: Connection reset by peer]
davepdotorg has joined #lisp
schweers has quit [Ping timeout: 260 seconds]
Lord_of_Life has quit [Read error: Connection reset by peer]
Lord_of_Life has joined #lisp
shifty has quit [Ping timeout: 240 seconds]
FreeBirdLjj has joined #lisp
vms14 has quit [Remote host closed the connection]
galex-713_ has quit [Ping timeout: 246 seconds]
Necktwi has quit [Ping timeout: 240 seconds]
Necktwi has joined #lisp
galex-713 has joined #lisp
skapata has joined #lisp
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #lisp
sonologico has quit [Read error: Connection reset by peer]
FreeBirdLjj has quit [Remote host closed the connection]
__jrjsmrtn__ has quit [Ping timeout: 240 seconds]
FreeBirdLjj has joined #lisp
ebrasca has joined #lisp
Inline has joined #lisp
slyrus has quit [Ping timeout: 240 seconds]
__jrjsmrtn__ has joined #lisp
treflip has joined #lisp
Bike has joined #lisp
supercoven has joined #lisp
<shangul>
How to tell dexador to ignore verifying certificates for HTTPS connections?
EvW has quit [Ping timeout: 240 seconds]
supercoven has quit [Max SendQ exceeded]
supercoven has joined #lisp
<shangul>
hmm
<shangul>
Then why am I using HTTPS?
<shangul>
:D
<shangul>
Forget my question
<dlowe>
because mitm is still harder than just capturing packets
<dlowe>
if the client allows, you could also pin the cert so that the one site is guaranteed to use that one certificate, which will also thwart mitm attacks
paul0 has quit [Remote host closed the connection]
edgar-rft has quit [Quit: Leaving]
paul0 has joined #lisp
vgmind has joined #lisp
cosimone has joined #lisp
mindCrime has joined #lisp
warweasle has joined #lisp
<warweasle>
Well, I tried ##C++ but most of them never heard of Unification. Any idea if there is a unification library in C/C++?
<sm2n>
clasp+cl-unification
xantoz has joined #lisp
<warweasle>
Looking it up. Is that in C++ or lisp?
aartaka has quit [Ping timeout: 240 seconds]
aartaka has joined #lisp
xantoz has quit [Quit: WeeChat 2.9]
<warweasle>
OH, clasp is a lisp..
<warweasle>
Yeah, that won't work with unreal engine.
aartaka has quit [Read error: Connection reset by peer]
xantoz has joined #lisp
yonkunas has joined #lisp
<jackdaniel>
maybe libecl.so + cl-unification?
EvW has joined #lisp
bitmapper has joined #lisp
galex-713 has quit [Ping timeout: 272 seconds]
galex-713_ has joined #lisp
<gendl>
Hi, why would my remote slime connection get "broken by remote peer" instead of going into the debugger, when I hit an error.
<warweasle>
gendl: Sounds like you crashed your lisp server.
<gendl>
warweasle: nope. Server is still there, I can do M-x slime-connect and connect to it again
<warweasle>
And it's not creating a new instance?
<gendl>
i'm tunneled through ssh, so I use e.g. M-x slime-connect to localhost port 4249
<gendl>
nope, it's the same instance -- although that's a good question, let me double check that
<gendl>
indeed the server is running in an infinite recovery loop so you may be on to something
<gendl>
should have said "i _assume_ it's the same instance.."
<warweasle>
That's why I ask stupid questions.
<warweasle>
I have to be willing to be stupid before I can learn something new...
<gendl>
Hmm i have a 46GB log file.. i wonder if something could be amiss...
<warweasle>
gendl: Seems you mistyped a 'G' instead of a 'k'.
<gendl>
nope you read that right. Giga.
<warweasle>
My gawd man. It's full of errors!
<gendl>
seems the server process had been constantly crashing on initialization and getting re-spawned. the startup banner and messages are repeated in the log file a gazillion times.
<gendl>
soon it would have blown out my hard disk capacity.
<warweasle>
Well, that's no fun. Tell it to stop.
<gendl>
it wasn't slime/swank crashing the lisp -- the lisp was repeatedly crashing on its own.
<gendl>
I did. killed the infinite recovery loop.
<warweasle>
Yeah... Whenever something is wrong I always assume I did it. Generally, every library I download is much better than anything I could write myself.
<gendl>
anyway sorry for the noise, problem identified and nothing to do with slime/swank -- my init is broken...
<gendl>
warweasle: sage advice
booaa has joined #lisp
<warweasle>
gendl: Happens. We all help make the world a slightly better place.
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #lisp
saganman has quit [Quit: WeeChat 1.6]
galex-713_ has quit [Ping timeout: 246 seconds]
saganman has joined #lisp
galex-713 has joined #lisp
FreeBirdLjj has quit [Ping timeout: 260 seconds]
_paul0 has joined #lisp
rumbler31 has quit [Ping timeout: 272 seconds]
booaa has quit [Quit: ERC (IRC client for Emacs 28.0.50)]
paul0 has quit [Ping timeout: 240 seconds]
treflip has quit [Quit: WeeChat 2.6]
FreeBirdLjj has joined #lisp
FreeBirdLjj has quit [Ping timeout: 240 seconds]
mmohammadi98129 has joined #lisp
Lord_of_Life_ has joined #lisp
Lord_of_Life has quit [Ping timeout: 246 seconds]
Lord_of_Life_ is now known as Lord_of_Life
cosimone has quit [Quit: Quit.]
cosimone has joined #lisp
daphnis has joined #lisp
<daphnis>
does common lisp have anything corresponding to elisps pcase?
<beach>
What does pcase do?
<_death>
there are libraries for pattern matching
<daphnis>
tests whether a predicate applies to the variable, rather than whether it is equal to a value
<beach>
"variable"? If it is anything like ordinary CASE, it computes the value of an arbitrary form before checking the cases.
<_death>
cond the ultimate
<beach>
It should be easy to write a macro that does that.
<daphnis>
oh, maybe i'm just looking for cond
<mseddon>
daphnis: It's a good go-to form ;)
TheInformaticist has joined #lisp
arpunk has joined #lisp
kaftejiman has quit [Remote host closed the connection]
frgo has quit [Ping timeout: 240 seconds]
treflip has joined #lisp
EvW has quit [Ping timeout: 260 seconds]
Oladon has joined #lisp
daphnis has quit [Ping timeout: 260 seconds]
TheInformaticist has quit [Remote host closed the connection]
warweasle has left #lisp ["Killed buffer"]
arpunk has quit [Remote host closed the connection]
rumbler31 has joined #lisp
mmohammadi98129 has quit [Quit: I quit (╯°□°)╯︵ ┻━┻]
mmohammadi9812 has joined #lisp
davepdotorg has quit [Remote host closed the connection]
davepdotorg has joined #lisp
davepdotorg has quit [Read error: Connection reset by peer]
davepdot_ has joined #lisp
davepdot_ has quit [Read error: Connection reset by peer]
davepdotorg has joined #lisp
rumbler31 has quit [Remote host closed the connection]
borei has joined #lisp
<remexre>
anyone know of bindings to signal (the chat program)? libsignal-protocol-c is gross enough that I'd rather not write the cffi glue myself if I don't have to :)
jw4 has quit [Read error: Connection reset by peer]
<Xach>
(not all failures are related to sbcl's recent change)
davepdot_ has quit [Read error: Connection reset by peer]
davepdotorg has joined #lisp
<Xach>
If you see one of your projects there it would be great to update it!
vgmind has left #lisp [#lisp]
davepdotorg has quit [Read error: Connection reset by peer]
davepdotorg has joined #lisp
<beach>
That's quite a list.
luckless has joined #lisp
<Xach>
there is some redundancy - if project A fails, and is used by B, C, and D, all four will show the same failure error.
galex-713 has quit [Ping timeout: 246 seconds]
<Xach>
The end result is the same: none of them work
rumbler31_ has joined #lisp
<beach>
I see.
davepdotorg has quit [Ping timeout: 256 seconds]
<Bike>
huh, some of these look fairly obvious. like :type (simple-array ...) :initform nil
plop has quit [Ping timeout: 245 seconds]
galex-713 has joined #lisp
<Xach>
i think they are almost all of that form, with a small number of package locks/conflicts.
froggey has quit [Ping timeout: 246 seconds]
froggey has joined #lisp
<Xach>
I should analyze the errors and determine which fixes give the most bang for the buck
galex-713 has quit [Ping timeout: 272 seconds]
<Xach>
(automatically, and add that to all future reports)
<easye>
jackdaniel: thanks.
Jesin has quit [Quit: Leaving]
eddof13 has joined #lisp
madage has quit [Ping timeout: 240 seconds]
galex-713 has joined #lisp
madage has joined #lisp
gareppa has joined #lisp
frgo has joined #lisp
rumbler31 has quit [Remote host closed the connection]
rumbler31 has joined #lisp
rumbler31 has quit [Remote host closed the connection]
rumbler31 has joined #lisp
davepdotorg has joined #lisp
<jasom>
why should :initform cause an issue with :type? I'm confused
<jasom>
I would do :initform nil if I wanted to require it be specified when constructed, for example.
davepdotorg has quit [Ping timeout: 260 seconds]
<Xach>
I don't know, but current SBCL will reject such code at compile time.
<jasom>
That probably breaks a lot of the code I've written
<Xach>
I have not closely followed the discussion around the change, only that it seems to be here to stay.
<mfiano>
It doesn't. If you declare a type, it is now a warning if the initial value's type is not of the declared type. You can always use a compelx type specifier to include null
<jackdaniel>
jasom: (foo :initform nil :type integer) is invalid
<jackdaniel>
if you don't supply it
<jackdaniel>
or, to be exact, it is undefined behavior
<jasom>
jackdaniel: fair enough.
<jackdaniel>
what you want is (fo :initarg :foo :type integer)) :default-initargs :foo (alexandria:required-arg 'foo))
<jackdaniel>
or something in this spirit
<jasom>
does it do the same thing with structures?
<jackdaniel>
eventually (foo :initform nil :type (or integer null))
<mfiano>
Structures is an error if the type doesn't match at compile time, at least on SBCL
<jasom>
warning, not error, right mfiano?
<mfiano>
Error
<jackdaniel>
with structures you are even deeper in trouble, because type is used for inlined access and accessor-functions may be used for type inferenc3e
<jackdaniel>
inference*
<jackdaniel>
so you could end up with inlined assembler instruction which adds fixnum to a string ,)
<jasom>
2.0.0. doesn't even warn
<jasom>
switching to alexandria:required-arg from nil is easy enough; thanks for pointing that out jackdaniel
<jackdaniel>
sure
karlosz has quit [Ping timeout: 240 seconds]
galex-713 has quit [Ping timeout: 246 seconds]
<mfiano>
Xach: Yeah, I always wanted that from the failure reports. Would be nice to display it as a tree structure with root nodes sorted by "most bang for the buck". For example glkit is not located in proximity to sdl2kit or sketch, but it is the cause of their failures.
<mfiano>
(guess that would be a forest structure)
<Xach>
hu.dwim.web-server and hu.dwim.rdbms account for nearly 60 of the failures.
<Xach>
claw is second with 23. then cl-csv with 12, cl-messagepack with 10, cl-cffi-gtk with 10, db-cp with 6, and diminishing from there.
<mfiano>
claw can be easily fixed. I already pinged borodust. He has to backport a PR that was recently merged into cl-autowrap, what claw is derived from.
eddof13 has quit [Ping timeout: 264 seconds]
<Xach>
excellent
rumbler31 has quit [Remote host closed the connection]
<Xach>
i have emailed attila re: hu.dwim stuff
rumbler31 has joined #lisp
<ebrasca>
Why encoding and decoding is hard problem?
<ebrasca>
Like from octets and strings to structures.
<Xach>
ebrasca: is it considered a hard problem?
<Xach>
I hadn't really noticed.
rumbler31 has quit [Remote host closed the connection]
<ebrasca>
Xach: Do you know some good encoder/decoder for bynary data?
rumbler31 has joined #lisp
<mfiano>
com.gigamonkeys.binary-data among many others
<mfiano>
Did you read PCL?
* ebrasca
is searching what is "PCL".
<jasom>
ebrasca: fast-io works for this too, though it's original purpose was for writing to byte-vectors it supports streams as well
<jasom>
!minion tell ebrasca about pcl
<Xach>
ebrasca: there are so many options
<jasom>
minion: tell ebrasca about pcl
<minion>
ebrasca: look at pcl: pcl-book: "Practical Common Lisp", an introduction to Common Lisp by Peter Seibel, available at http://www.gigamonkeys.com/book/ and in dead-tree form from Apress (as of 11 April 2005).
<mfiano>
fast-io is more for reading and writing octets. Binary parsing is at a different level.
<jasom>
mfiano: it is not for reading/writing octets, it can read binary values from 8-64 bits with specified endian
<jasom>
s/not for/not just for/
<mfiano>
This I know. I helped develop it :)
Jesin has joined #lisp
<jasom>
ebrasca: do you just want serialization/deserialization, or do you want to read externally specified binary formats?
<mfiano>
Point being, it is a tool for binary parsing, and requires no knowledge of compiler theory to function, unlike binary parsing.
theseb has joined #lisp
<ebrasca>
I have read big part of PCL.
kaftejiman has joined #lisp
<mfiano>
Maybe read the CD database practical chapter again.
<mfiano>
It does go into one method (although very unorthodox) to parse binary data.
<ebrasca>
What about mixed endianes , split fields and other strange things ?
<mfiano>
A friend wrote that specifically for that use case for me, because there were not any robust solutions available at the time.
<Xach>
It is also not particularly hard to write it yourself, and is quite educational. the tools cl provides are quite adequate building blocks to build up abstractions.
<mfiano>
You can check out flac-metadata, for an example of using fast-io and bitio in a mixed endian format. FLAC is BE for most fields, but does include Ogg Vorbis data which is LE.
<ebrasca>
There is 1 value in two places s_blocks_count_lo and s_blocks_count_hi
<ebrasca>
But s_blocks_count_hi is only used if 64bit support is set.
rogersm has joined #lisp
<mfiano>
Mixed [byte] endianess is incredibly easy to handle. Things can get complicated without good abstractions when trying to handle bit endianness
davepdotorg has quit [Ping timeout: 272 seconds]
saganman is now known as slartibartfast
<Xach>
ebrasca: that is a matter of doing some math along with an IF form
<ebrasca>
s_blocks_count_lo is at offset #x4 and s_blocks_count_hi is at offset #x150 , both have 32 bits size and little endian
slartibartfast is now known as saganman
<ebrasca>
I don't like to define structure , reader and writer separately.
cosimone has quit [Remote host closed the connection]
cosimone has joined #lisp
aartaka has quit [Ping timeout: 258 seconds]
treflip has quit [Ping timeout: 264 seconds]
aartaka has joined #lisp
jdgr has joined #lisp
aartaka_d has quit [Ping timeout: 256 seconds]
cosimone has quit [Client Quit]
cosimone has joined #lisp
cosimone has quit [Client Quit]
cosimone has joined #lisp
aartaka has quit [Ping timeout: 258 seconds]
gareppa has quit [Quit: Leaving]
Sauvin has quit [Remote host closed the connection]
luckless has quit [Ping timeout: 240 seconds]
theseb has left #lisp ["Leaving"]
luckless has joined #lisp
frgo has quit []
davepdotorg has joined #lisp
gravicappa has quit [Ping timeout: 256 seconds]
gravicappa has joined #lisp
Lycurgus has quit [Quit: Exeunt]
* Xach
blogs about the breakage
galex-713_ has joined #lisp
davepdotorg has quit [Ping timeout: 256 seconds]
galex-713 has quit [Ping timeout: 272 seconds]
frgo has joined #lisp
scymtym has quit [Ping timeout: 260 seconds]
<aeth>
The only problematic thing witht he new SBCL change is that SBCL went from completely ignoring :type in DEFCLASS at default optimization levels to not ignoring :type in a niche case that other implementations probably don't check (while still otherwise ignoring :type in DEFCLASS at default optimization levels)
<aeth>
s/witht he/with the/
<aeth>
The only problem with not using (error foo) as a default value to keyword (including the ones generated by :initform) or optional arguments is SLIME's minibuffer behavior, which creates a lot of noise when the default value is (error 'foo "bar baz quux") when the only relevant thing to the user of the API is that the default value is (error)
<aeth>
s/with not using/with using/
dominic34 has joined #lisp
dominic34 has quit [Excess Flood]
dominic34 has joined #lisp
<mseddon>
aeth: I don't understand but as a user of SBCL I want to understand more.
cloveistaken has left #lisp [#lisp]
<mseddon>
(I am a cautious upgrader, for reasons like this)
<aeth>
Unless this is more extensive than the 2.0.8 changes that got rolled back just before release, this is only for DEFCLASS's :iniform and perhaps DEFSTRUCT default slots (I didn't test the latter) and there are even more invalid APIs in the general case of a function with &optional or &keyword arguments with DECLAREd types that contradict the provided default values.
<aeth>
This would have made more sense to check since SBCL actually checks these.
<mseddon>
ick, and that is a bit of a messy part of the spec too.
<mseddon>
surprised that slipped through though.
<mseddon>
so what happens, you lose type checking? or full segfault doom?
<aeth>
mseddon: In 2.0.8 and before, SBCL ignores :type entirely in DEFCLASS when (safety 3) isn't true, or when speed > safety, or something like that. Essentially, by default, :type is a meaningless thing in SBCL, so probably the majority of Common Lispers have never really faced a :type that actually, really checks.
<mseddon>
:|
<aeth>
In 2.0.9, SBCL does a tiny bit of type checking, to make sure that the :initform is a valid form of the slot's :type in DEFCLASS.
<mseddon>
I mean I happen to declaim that during development, but I would expect this for much lower values of safety.
<aeth>
(SBCL's official stance has always been to use DEFSTRUCT if you care about types because those are optimizable.)
<aeth>
(Or at least the stance of their developers if questioned on IRC.)
<mseddon>
wait, what. I thought defclass was efficient now?
<mseddon>
(spoilers, I still think it is)
<aeth>
mseddon: You wouldn't segfault if the type is invalid (except perhaps at (safety 0) when all bets are off), but you would probably get a runtime error. Except with DEFCLASS, which will only give you that runtime error if (debug 3) and otherwise act like everything's fine if you (setf (foo your-instance) 42) when that slot is, idk, of type conses or something.
<mseddon>
but that runtime error is a false positive
<aeth>
(DEFSTRUCT will give you errors on setting or constructing things with slots of invalid types)
<mseddon>
(and in the case of defclass, terrifyingly sounds like a false positive)
<mseddon>
aeth: if you find the time to put up an example, I would be happy to rock up alongside you and wave my pitchfork.
mmohammadi9812 has quit [Ping timeout: 246 seconds]
galex-713_ has quit [Ping timeout: 240 seconds]
<aeth>
mseddon: (setf (foo your-instance) 42) if foo is the accessor for a DEFCLASS slot with :type single-float is an error, it's just that SBCL won't check for it at default optimization levels. It will be an error in e.g. CCL.
<aeth>
Take this class: (defclass foobar () ((%foo :initform 0f0 :initarg :foo :accessor foo :type single-float)))
<aeth>
Now take this setter which is invalid: (setf (make-instance 'foobar) 1)
galex-713 has joined #lisp
scymtym has joined #lisp
FreeBirdLjj has joined #lisp
cosimone has quit [Quit: Quit.]
<aeth>
That might error, that might not. In CCL, that does error. In SBCL, even though SBCL is otherwise the best implementation at checking types, that doesn't error unless the DEFCLASS is defined in a (debug 3) environment (iirc... it certainly doesn't at default).
<aeth>
Now, replace ":initform 0f0" with ":initform nil". In CCL, that's a runtime type error when calling (make-instance 'foobar) unless a valid value for foo is provided. The appropriate way to do this, though, is to make the initform a call to ERROR.
<aeth>
In many implementations, it's just ignored entirely and the invalid NIL default value is permitted, including SBCL 2.0.8 at default optimization levels.
<mseddon>
okay, I promote that to false negative and cry.
drl has joined #lisp
FreeBirdLjj has quit [Ping timeout: 260 seconds]
daphnis has joined #lisp
kaftejiman has quit [Remote host closed the connection]
<aeth>
Now according to NEWS at http://www.sbcl.org/news.html SBCL 2.0.9 does this: "the compiler signals a warning at compile-time when an initform of T, NIL or 0 does not match a STANDARD-CLASS slot's declared type."
<mseddon>
I wonder how that new behaviour slipped through?
<mseddon>
it seems somehow debug <= 2 is "all bets are off" mode, which is way to early
<aeth>
SBCL (an implementation people generally use for the static checking) now does a tiny, tiny bit of static checking in a case where it previously did no checking at all, but only when the :initform is T, NIL, or 0
<mseddon>
aeth: no, this is the thing, I expect SBCL to fall at the first hurdle, and use it because it does.
<aeth>
(SBCL generally does static checking as compile time warnings that compile into runtime errors)
<Bike>
i'm curious why they didn't just do it for all constant initforms.
<aeth>
mseddon: Right, people are complaining because it does a bit of checking, whereas I got my hopes up that this edge case in SBCL type checking was finally fixed, when it's only fixed in a tiny, tiny, tiny special case.
sonologico has joined #lisp
<drl>
How can I change the SBCL_HOME path?
<Inline>
in a running instance ?
<Inline>
or do you mean from the terminal ?
<aeth>
Bike: I'm also curious as to why this doesn't (at least didn't in the right-before-2.0.8 release I tested before it got rolled back for 2.0.8) do a similar check for DEFUNs with DECLAREd types incompatible with the default optional/keyword argument values. This one might even catch a few bugs in my code.
<mseddon>
aeth: I had an amazing boss once who told me the story of managing a project for a simple vector CAD program for a tutorial for a university lesson. It blew up if they added >5 shapes on the screen, he raised it, they got back something that blew up with >6 shapes on the screen...
davepdotorg has joined #lisp
<Bike>
well that sounds like it would be a completely unrelated change
<mseddon>
aeth: this is not okay. :)
<Bike>
it's not as though initforms become keyword argument defaults
<aeth>
Bike: Depending on your perspective. You the user can see intforms as keyword argument defaults of a MAKE-INSTANCE. That's certainly how SLIME exposes them.
<Bike>
okay, but that's not how sbcl does it, and in fact it's kind of impossible with how mop works
<mseddon>
drl: what operating system are you using, MacOS, Linux, or Windows?
<aeth>
Bike: Yes, it would have to be checked in a different place, it is just, from the user's perspective, an extremely similar issue.
<drl>
mseddon, linux.
<mseddon>
drl: do you have a .bashrc or such?
<Bike>
i hope you now understand why they do not do a similar check
<mseddon>
drl: unless you changed your shell, it's usually .bashrc that configures your default shell (bash)
<drl>
mseddon, yes.
<mseddon>
drl: so if you add EXPORT SBCL_HOME=/path/to/your/sbcl/home at the bottom of that .bashrc
<aeth>
Bike: Sorry, I'm communicating it improperly. It's the same class of bug (a default value that cannot possibly be of the valid type, which when properly done should be a call to ERROR instead). It would just have to be checked differently.
<mseddon>
drl: from now on, after you OPEN a terminal or program, it should be set.
<Bike>
you said: "I'm curious why this doesn't do a similar check"
<Bike>
and the answer is that that would be a completely different change.
<aeth>
Bike: Internally, yes.
<mseddon>
drl: for least confusion, check it works in a shell after you add that, and then log out and in again, in case some old programs didn't realise that SBCL_HOME changed.
davepdotorg has quit [Ping timeout: 240 seconds]
<drl>
mseddon, thanks. I remember now setting it there a long time ago.
davepdotorg has joined #lisp
supercoven has quit [Read error: Connection reset by peer]
marusich has quit [Ping timeout: 260 seconds]
Nilby has joined #lisp
davepdotorg has quit [Ping timeout: 240 seconds]
johnjay has quit [Ping timeout: 272 seconds]
shangul has quit [Ping timeout: 256 seconds]
arpunk has quit [Ping timeout: 240 seconds]
Oladon has quit [Quit: Leaving.]
Oladon has joined #lisp
dominic34 has quit [Ping timeout: 240 seconds]
luckless has quit [Ping timeout: 240 seconds]
shka_ has quit [Ping timeout: 240 seconds]
cosimone has joined #lisp
bilegeek has joined #lisp
luckless has joined #lisp
luckless has quit [Ping timeout: 240 seconds]
EvW has quit [Ping timeout: 240 seconds]
luckless has joined #lisp
narimiran has quit [Ping timeout: 240 seconds]
<mseddon>
drl: np, make sure your shell environment is configured correctly, lisp requires this.
orivej has quit [Ping timeout: 256 seconds]
gaqwas has quit [Ping timeout: 260 seconds]
<mseddon>
drl: sorry, I meant: "export SBCL_HOME=/your/path"
<mseddon>
drl: lower case export keyword.
arpunk has joined #lisp
remexre has quit [Ping timeout: 240 seconds]
EvW has joined #lisp
JuPa has quit [Quit: Leaving]
remexre has joined #lisp
wsinatra has quit [Quit: WeeChat 2.9]
ioa has quit [Ping timeout: 240 seconds]
ioa has joined #lisp
Mawile has left #lisp ["Leaving"]
johnjay has joined #lisp
<drl>
How can you tell what version of SBCL that slime is using?
<drl>
SBCL_HOME environment variable is set, and conflicts with INSTALL_ROOT.
<drl>
Aborting installation. Unset one or reset the other, then try again
<drl>
SBCL_HOME=asdf/quicklisp
<drl>
INSTALL_ROOT=/usr/local
<drl>
What am I doing wrong?
<Xach>
drl: what are you trying to achieve?
gravicappa has quit [Ping timeout: 256 seconds]
<aeth>
I personally just create a 3-line shell script (including #!/bin/bash in those 3 lines) in ~/bin to export SBCL_HOME and then call the SBCL executable from there.
<drl>
Xach, install the new git version of sbcl.
shangul has joined #lisp
<aeth>
drl: what I did to get it to work is this command: INSTALL_ROOT=/home/yourusernamegoeshere/.local sh ./install.sh
<aeth>
drl: and then in the script: export SBCL_HOME=/home/yourusernamegoeshere/.local/lib/sbcl
Fare has quit [Ping timeout: 260 seconds]
ggole has quit [Quit: Leaving]
<aeth>
Installing to /usr/local is something I don't mess with unless I have no other option, e.g. stumpwm (since I need to launch it like any other WM)
<aeth>
Installing to ~/.local and putting the binary (or a trivial shell script, like I do with SBCL) in ~/bin tends to have fewer issues ime
dominic34 has joined #lisp
dominic34 has quit [Excess Flood]
dominic34 has joined #lisp
<aeth>
The only catch is it might create files you want to exclude from your backups, like anything in ~/.local/lib and ~/.local/bin in this case
galex-713 has quit [Ping timeout: 272 seconds]
<drl>
aeth, I'm wanting to reinstall stumpwm.
<aeth>
this might work in general to laucnh a custom, home-installed SBCL: export SBCL_HOME=~/.local/lib/sbcl && ~/.local/bin/sbcl
<aeth>
You might need to put the second part on its own line, though, idk edge cases in shell parsing
<aeth>
drl: afaik, stumpwm creates its own standalone executable when you install it, so even if you use the ~/.local/bin/sbcl executable, it will use that newer version to build the /usr/local/bin/stumpwm binary
Fare has joined #lisp
Inline has quit [Quit: Leaving]
<drl>
aeth, If i set SBCL_HOME to anything but asdf/quicklisp I get and error message when I start slime.
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
ech has quit [Remote host closed the connection]
dmc00 has quit [Ping timeout: 240 seconds]
<drl>
Well, maybe not. I'm getting confused now. Nothing seem to be working as before.
gaqwas has joined #lisp
_whitelogger has joined #lisp
<Nilby>
drl: When I'm having such problems I usually make a new user, or use a "clean" with no files, and if it works there, then carefully and reversibly remove stuff from my environment until it works. Then I can maybe fix the problematic piece of setup.
<Nilby>
drl: If it's really trouble one can use fresh VM or something.
<drl>
aeth, I followed you directions, and it installed. But now I get this error message: core was built for runtime "lat-l-2020-09-28-06-53-18" but this is "lat-l-2020-09-14-16-03-37"
davepdotorg has joined #lisp
johnjay has quit [Read error: Connection reset by peer]
pve has quit [Quit: leaving]
<daphnis>
is there a cl function that turns a list of character codes into a string?
<Nilby>
(coerce '(#\f #\o #\o) 'string)
<Xach>
daphnis: (map 'string 'code-char list)
johnjay has joined #lisp
<daphnis>
thanks!
davepdotorg has quit [Ping timeout: 260 seconds]
<Nilby>
use Xach's answer, it's is about 3x faster
cosimone has quit [Quit: Quit.]
voidlily has quit [Read error: No route to host]
voidlily has joined #lisp
IPmonger_ is now known as IPmonger
Alfr has joined #lisp
Oladon has quit [Quit: Leaving.]
<aeth>
drl: I guess remove and reinstall? My guess is the ~/.local/lib/sbcl and ~/.local/bin/sbcl are using different SBCLs for whatever reason... or, alternatively, the correct SBCL_HOME isn't being used
galex-713 has joined #lisp
yamashitatan has joined #lisp
voidlily has quit [Remote host closed the connection]
borodust has quit [Remote host closed the connection]
voidlily has joined #lisp
EvW has quit [Ping timeout: 260 seconds]
galex-713_ has joined #lisp
galex-713 has quit [Ping timeout: 272 seconds]
yamashitatan has quit [Quit: WeeChat 2.3]
greaser|q has joined #lisp
galex-713_ has quit [Client Quit]
galex-713 has joined #lisp
galex-713 has quit [Remote host closed the connection]
marusich has joined #lisp
AdmiralBumbleBee has joined #lisp
galex-713 has joined #lisp
galex-713 has quit [Client Quit]
galex-713 has joined #lisp
random-nick has quit [Ping timeout: 264 seconds]
EvW has joined #lisp
dra_ has joined #lisp
dra_ is now known as dra
marusich has quit [Quit: Leaving]
Oladon has joined #lisp
shifty has joined #lisp
daphnis has quit [Ping timeout: 240 seconds]
daphnis has joined #lisp
iissaacc has joined #lisp
galex-713 has quit [Ping timeout: 272 seconds]
drl has quit [Ping timeout: 260 seconds]
drl has joined #lisp
galex-713 has joined #lisp
frgo has quit [Remote host closed the connection]
borodust has joined #lisp
frgo has joined #lisp
fortitude has joined #lisp
daphnis has quit [Ping timeout: 256 seconds]
CrazyPython has joined #lisp
dra has quit [Quit: Leaving]
dominic34 has quit [Remote host closed the connection]
galex-713 has quit [Ping timeout: 272 seconds]
fortitude_ has joined #lisp
fortitude__ has joined #lisp
fortitude has quit [Ping timeout: 272 seconds]
fortitude_ has quit [Ping timeout: 256 seconds]
Fare has quit [Ping timeout: 240 seconds]
davepdotorg has joined #lisp
davepdotorg has quit [Read error: Connection reset by peer]