p_l changed the topic of #lisp to: Common Lisp, the #1=(programmable . #1#) programming language | <https://irclog.tymoon.eu/freenode/%23lisp> <https://irclog.whitequark.org/lisp> <http://ccl.clozure.com/irc-logs/lisp/> | ASDF 3.3.4
wxie has quit [Ping timeout: 246 seconds]
<gendl> Hi, I'm getting this error in SBCL again:
<gendl> (sorry about that formatting).
<gendl> stassats said it's because some concurrent code is setting stuff in a hash table. Probably I have to put a lock around whatever code is modifying that hash table.
<gendl> But, how to track down what hash table it is?
<gendl> this happens when running zaserve on zacl (a fork of allegroserve which runs on the zacl compatibility layer,https://gitlab.common-lisp.net/zbeane/zacl )
<gendl> and it happens if I do something like hit [Shift]-reload on a web page with several images, and it hits the server with a dozen or so requests simultaneously for all those image files.
<gendl> I take it that things like (setf (gethash ... )) are not thread-safe in SBCL?
<gendl> sorry i guess I should be posting this in #sbcl too..
<Bike> setf gethash is not thread safe on any implementation i know of... unless the make-hash-table that made the table is marked as synchronized/locked/etc in some implementation dependent way
<gendl> Bike: Thanks. I think I just found the offending hash table, by turning on debugging in aserve.
turona has quit [Quit: ...]
<gendl> I forgot that by default aserve traps errors, prints them, and continues on its merry way without going into the debugger. Now I got a real debugger and I see a recognizable hash table from aserve being fiddled with in the backtrace... diving into it...
pilne has joined #lisp
<Bike> on sbcl it's :synchronized t, apparently
krid has quit [Ping timeout: 260 seconds]
MerlinTheWizard has quit [Ping timeout: 244 seconds]
SGASAU has quit [Remote host closed the connection]
<gendl> Bike: Yay! that seems to fix it!
<Bike> cool.
SGASAU has joined #lisp
<gendl> it's handling a few dozen simultaneous requests, anyway.
krid has joined #lisp
<gendl> it's not really the requests, it's that aserve is publishing files on the fly under the auspices of a `publish-directory` -- so it just accesses that hash table the first time the files are accessed after server startup.
<gendl> but if a page is containing dozens of little images then it's hitting the hash table simultaneously with all those
<gendl> i'm not sure why it doesn't crash Allegro or CCL though.
<gendl> or LW
<gendl> maybe they do have synchronous hash tables by default? Or maybe I've just been lucky.
<Bike> allegro docs don't seem to mention thread safety.
<gendl> now i have to figure out how to make the fix without touching aserve sources where that `make-hash-table` lives, as is our directive -- trying to make this work with pristine aserve sources.
<gendl> maybe SBCL is doing a safety check which the other impls aren't doing - it seems it's auditing hash-table-count somehow
<gendl> i don't think anything is accessing the same hash table slots at the same time -- it's just that the count might be fleetingly inconsistent - and somehow SBCL is picking that up and throwing an error.
<gendl> anyway at least i'm happy that the crashes themselves are not a big mystery anymore -- thanks!
<gendl> btw we met in London right?
<Bike> me? i've never been to london.
<gendl> ok sorry i have you confused. London ELS (2015?) i thought I met "bike" from here. but maybe was another nick from here.
sabrac has joined #lisp
Fenix has quit [Remote host closed the connection]
Fenix has joined #lisp
turona has joined #lisp
Fenix has quit [Read error: No route to host]
schjetne has joined #lisp
jprajzne has quit [Quit: jprajzne]
sjl has quit [Quit: WeeChat 2.2-dev]
ahungry has joined #lisp
quazimodo has joined #lisp
hiroaki has quit [Ping timeout: 246 seconds]
keep_learning has quit [Quit: This computer has gone to sleep]
keep_learning has joined #lisp
MerlinTheWizard has joined #lisp
bitmapper has quit [Ping timeout: 265 seconds]
dddddd has quit [Remote host closed the connection]
orivej has quit [Ping timeout: 240 seconds]
shifty has joined #lisp
hiroaki has joined #lisp
shifty has quit [Ping timeout: 246 seconds]
zaquest has quit [Quit: Leaving]
torbo has joined #lisp
zaquest has joined #lisp
mono has joined #lisp
monokrom has quit [Ping timeout: 256 seconds]
Nilby has quit [Read error: Connection reset by peer]
penguwin has quit [Quit: NO CARRIER]
penguwin has joined #lisp
orivej has joined #lisp
pilne has quit [Quit: Tis but a scratch]
penguwin has quit [Quit: NO CARRIER]
penguwin has joined #lisp
loli has quit [Quit: WeeChat 2.7.1]
stoneglass has quit [Quit: stoneglass]
loli has joined #lisp
turona has quit [Ping timeout: 272 seconds]
turona has joined #lisp
<beach> Good morning everyone!
torbo has quit [Remote host closed the connection]
prefixt has quit [Ping timeout: 260 seconds]
prefixt has joined #lisp
prefixt has quit [Changing host]
prefixt has joined #lisp
anlsh has joined #lisp
<anlsh> Is there a portable condition for indexing an array out of bounds? I get an sb-int:array-invalid-index-error but that seems sbcl-specific
<Bike> i don't think so. you can check beforehand with array-in-bounds-p.
jruiz has quit [Ping timeout: 246 seconds]
jruiz has joined #lisp
shangul has joined #lisp
<aeth> If only there was a portability library for things like this (if that's even possible)
<edgar-rft> let's name it trivial-things-like-this
<aeth> no, it needs to be trivial-array-invalid-index-error
<edgar-rft> what kind of restarts would it offer?
<aeth> Hmm, it would be tricky/impossible to implement even with a wrapper around AREF because in ECL (aref (list) 5) and (aref (make-array 5) 5) are both SIMPLE-TYPE-ERRORs.
<aeth> Well, I mean, without resorting to the (probably) performance-destroying ARRAY-IN-BOUNDS-P
ahungry has quit [Remote host closed the connection]
<buffergn0me> This sounds like a CDR
<buffergn0me> Also it would probably be pretty easy to patch ECL
<phadthai> I think that ECL will silently refuse to access an array out of bounds without warning or error when compiled with a high optimization level (at least it used to), so there's probably no other portable way than array-in-bounds-p (or to make sure the array is large enough)
<phadthai> (or other custom checks)
<buffergn0me> Well that is true for a lot of other checks, in most CL compilers
<phadthai> s/access/write to/
Oladon has joined #lisp
<phadthai> and ECL itself has no idea what other code under does, i.e. one can make it call write(2) on the buffer of a vector of course
<phadthai> or read(2) etc
red-dot has joined #lisp
<phadthai> so programmer judgment always necessary
<phadthai> and in typical code where arrays must grow, user code tracks itself its size and ensures to grow it
Bike has quit [Quit: Lost terminal]
anlsh has quit [Remote host closed the connection]
dmiles has quit [Read error: Connection reset by peer]
logicmoo has joined #lisp
jruiz has quit [Ping timeout: 240 seconds]
zmt00 has joined #lisp
zmt01 has quit [Ping timeout: 240 seconds]
schjetne` has joined #lisp
keep_learning has quit [Ping timeout: 260 seconds]
gigetoo has quit [Ping timeout: 260 seconds]
acolarh has quit [Ping timeout: 260 seconds]
ck_ has quit [Ping timeout: 260 seconds]
ck_ has joined #lisp
schjetne has quit [Ping timeout: 260 seconds]
Bourne has quit [Ping timeout: 260 seconds]
keep_learning has joined #lisp
gigetoo has joined #lisp
acolarh has joined #lisp
zooey_ has joined #lisp
zooey has quit [Ping timeout: 240 seconds]
shangul has quit [Remote host closed the connection]
shangul has joined #lisp
buffergn0me has quit [Ping timeout: 240 seconds]
narimiran has joined #lisp
wooden has joined #lisp
vlatkoB has joined #lisp
zooey_ is now known as zooey
krid has quit [Ping timeout: 264 seconds]
MerlinTheWizard has quit [Ping timeout: 240 seconds]
elflng_ has joined #lisp
elflng has quit [Read error: No route to host]
dxtr has quit [Ping timeout: 256 seconds]
Oladon has quit [Quit: Leaving.]
orivej has quit [Ping timeout: 260 seconds]
patlv has quit [Quit: patlv]
Bourne has joined #lisp
shangul has quit [Remote host closed the connection]
logicmoo is now known as dmiles
karlosz has quit [Quit: karlosz]
karlosz has joined #lisp
MerlinTheWizard has joined #lisp
<jackdaniel> adding appropriate condition should be easy (and call it instead of the simple error), please make a ticket on gitlab
<jackdaniel> s/call/signal/
<jackdaniel> boundary checks are skipped only on extreme optimization settings like speed 3 debugging 0
red-dot has quit [Read error: Connection reset by peer]
red-dot has joined #lisp
gravicappa has joined #lisp
JohnMS_WORK has joined #lisp
SGASAU has quit [Remote host closed the connection]
SGASAU has joined #lisp
souron_the_evil has joined #lisp
jruiz has joined #lisp
jruiz has quit [Ping timeout: 244 seconds]
rgherdt has joined #lisp
_paul0 has joined #lisp
<aeth> hmm... Is there a way to have an efficient trivial-foo on top of the condition system if the conditions aren't exactly the same name?
paul0 has quit [Ping timeout: 265 seconds]
renzhi_ has joined #lisp
renzhi has quit [Ping timeout: 246 seconds]
<aeth> we might actually have a new trivial-foo out of this after all
zooey has quit [Ping timeout: 240 seconds]
<phoe> aeth: yes, deftype with reader conditionals
<phoe> now, let's hope that it actually works...
IRC-Source_21 has joined #lisp
<phoe> clhs #+
zooey has joined #lisp
CrazyEddy has quit [Remote host closed the connection]
vibs29 has joined #lisp
<aeth> phoe: so as long as we can convince implementors to use distinct conditions for things like array indices, we can make a portability library over it?
fbmnds has joined #lisp
<phoe> wait a second...
<phoe> kind-of
<phoe> you can use the deftype in handlers
<phoe> but not for instantiation
<beach> Wouldn't you just handle the implementation-specific condition and signal one that is specific to the trivial-??? library?
<phoe> beach: that would mean that you need two handlers, one for the implementation-specific condition, and another for the trivial-array-out-of-bounds condition
<beach> One would be inside the trivial-??? library, no?
<beach> If so, what is the problem with that?
<phoe> I don't yet understand, what would be the interface of that library?
<phoe> a custom AREF that adds a handler around the array access?
<beach> (with-trivial-??? (aref ...))
<phoe> oh, sure, that can be done
<phoe> that'll require users to wrap all of their array accesors in a with-trivial-??? though - it's cumbersome
CrazyEddy has joined #lisp
<beach> But yeah, that would be prohibitive for single calls to AREF.
<phoe> and error prone, unless one defines their own AREF
<beach> Sure, yes.
<aeth> there are a few others that would be good to handle here, like DESTRUCTURING-BIND
random-nick has joined #lisp
<aeth> and people can probably think of a few more that people want to handle but can't
asarch has joined #lisp
krid has joined #lisp
schjetne` has quit [Ping timeout: 246 seconds]
<asarch> If I have: (tacos 3), an easy way to get the number of tacos instead of (car (cdr '(tacos 3)))?
<White_Flame> (second '(tacos 3))?
<flip214> asarch: SECOND
<asarch> Thank you!
<White_Flame> or (cadr '(tacos 3))
<phadthai> now I want a taco
<White_Flame> now I want pad thai
<phadthai> why not both
<White_Flame> \:D/
krid has quit [Ping timeout: 260 seconds]
<asarch> Let's get some tacos with beer!
* phoe serves'em all in #lispcafe
MerlinTheWizard has quit [Ping timeout: 244 seconds]
pve has joined #lisp
Guest35617 has joined #lisp
akoana has quit [Quit: leaving]
vibs29 has left #lisp ["Leaving"]
karlosz has quit [Quit: karlosz]
karlosz has joined #lisp
asarch has quit [Quit: Leaving]
jprajzne has joined #lisp
froggey has quit [Ping timeout: 244 seconds]
duncan_ has joined #lisp
froggey has joined #lisp
decent-username has joined #lisp
karlosz has quit [Quit: karlosz]
karlosz has joined #lisp
ljavorsk has joined #lisp
ralt has joined #lisp
msk has quit [Remote host closed the connection]
varjag has joined #lisp
IRC-Source_21 has quit [Quit: Connection closed]
dale has quit [Quit: My computer has gone to sleep]
milanj has joined #lisp
Grue` has quit [Quit: ZNC 1.7.2 - https://znc.in]
Grue` has joined #lisp
milanj has quit [Quit: This computer has gone to sleep]
elflng_ is now known as elflng
katco has quit [Quit: killed]
unl0ckd has quit [Quit: killed]
no-defun-allowed has quit [Quit: killed]
clintm[m] has quit [Quit: killed]
LdBeth has quit [Quit: killed]
dalz has quit [Quit: killed]
amnesic[m] has quit [Quit: killed]
liambrown has quit [Quit: killed]
Cairn[m] has quit [Quit: killed]
mhitchman[m] has quit [Quit: killed]
Gnuxie[m] has quit [Quit: killed]
justache has quit [Max SendQ exceeded]
infra_red[m] has quit [Quit: killed]
Jachy has quit [Quit: killed]
Davd[m] has quit [Quit: killed]
Necktwi has joined #lisp
justache has joined #lisp
Guest35617 has quit [Ping timeout: 246 seconds]
Krystof has quit [Ping timeout: 264 seconds]
femi has quit [Ping timeout: 264 seconds]
Guest35617 has joined #lisp
turona has quit [Ping timeout: 272 seconds]
femi has joined #lisp
turona has joined #lisp
vivit has quit [Ping timeout: 258 seconds]
dalz has joined #lisp
orivej has joined #lisp
prefixt has quit [Ping timeout: 240 seconds]
rgherdt has left #lisp ["Leaving"]
cosimone has joined #lisp
prefixt has joined #lisp
prefixt has quit [Changing host]
prefixt has joined #lisp
twelvemonkeys has quit [Ping timeout: 260 seconds]
<boeg> Is there a library that has utilities for things like taking a string and making it url safe?
<jackdaniel> what is an url safe string?
<jdz> There's drakma:url-encode, most probably cl-who or other HTML generation libraries have something.
<Shinmera> It's called URL encoding and is a pretty trivial single function.
<boeg> jdz: thanks, ill check it out
adlai has joined #lisp
<boeg> jackdaniel: its obviously a string thats safe for using in urls ¯\_(ツ)_/¯
<boeg> Shinmera: indeed!
<Shinmera> not that obvious.
<jackdaniel> it still doesn't make sense to me, but I'll stop at that
<adlai> Xach: I have not previously received this specific complaint, however, it does weigh upon my mind: a few of "scalpl" project's ASDF systems perform external http requests, at load-time. problem?
amnesic[m] has joined #lisp
unl0ckd has joined #lisp
mhitchman[m] has joined #lisp
no-defun-allowed has joined #lisp
infra_red[m] has joined #lisp
DavdL[m] has joined #lisp
Cairn[m] has joined #lisp
LdBeth has joined #lisp
liambrown has joined #lisp
katco has joined #lisp
Jachy has joined #lisp
Gnuxie[m] has joined #lisp
clintm[m] has joined #lisp
<boeg> if you want to be pedantic, it's obviously not obvious, but I think it's easy to infer a meaning from the same statement i gave
<boeg> simple statement*
<flip214> adlai: that's a bad thing, right
<jackdaniel> what are quantum particles? well, obviously that are particles, which are quantum, dummy!
<adlai> it's not harmful to operation of the program, although it could cause undue headaches to the distributor
twelvemonkeys has joined #lisp
<beach> I agree with jackdaniel. For one thing, I don't know the definition of "safe" in this context.
<jackdaniel> adlai: doing external http requests during load time may be problematic for few reasons: one is security, there is no guarantee, that resources loaded won't become malicious at some point of time. another is the fact, that some installations are air-gapped
<mood> It's just escaping characters for use in a URL. For example, if you want to use "/" in a path component, you encode it as %2F instead
<jackdaniel> mood: thank you, that makes more sense
<beach> mood: What is the justification for using the word "safe" for such a transformation?
* adlai sighs and wonders what sort of overly-helpful airgap could possibly think that forwarding such requests could be a good idea
<adlai> the primary reason for doing requests at load-time is that there are APIs that change at a frequency significantly lower than the lifetime of an installation
<no-defun-allowed> beach: It's "safe" in the sense that it can't break HTML syntax.
toorevitimirp has joined #lisp
<beach> no-defun-allowed: Thanks!
<jdz> adlai: I wonder why the requests are not done in a setup or initialization function?
<mood> beach: Encoding a string in that way allows it to be inserted into a URL without invoking the special meaning of certain characters.
<mood> no-defun-allowed: That's not really correct. URLs and HTML are unrelated, and a & would still need to be escaped for use in HTML
<beach> Thanks. I think I understand.
<no-defun-allowed> Suppose I have the string "foo<p>bar" and just put it between <b>...</b>; then I would get <b>foo<p>bar</b>. That's not correct; but it's very bad if that string encodes some JavaScript program.
<no-defun-allowed> Oh, we're talking about URLs. My bad.
<phoe> still, injection is possible in URLs as well; the idea is similar, just the encoding differs
<boeg> exact
<boeg> beach, jackdaniel: i don't think there is anything to agree upon - I didn't provide more details, because they were not needed. Sufficient advice arrived swiftly, as I suspected, because it's a task that's used in a lot of places - I have done similar things in a lot of other languages, and suspected it would be easy to find a usable answer, which it was. If I was working on a quantum competer and needed an answer fitting my
<boeg> definition of a quantum particle, i would have gone into greater lengths with my question, alas i am not, although it would be exciting
<no-defun-allowed> A better example would be that encoding the alist (("foo" . "&bar")) as a query string like ?foo=&bar has a different meaning to what was anticipated.
<boeg> computer*
fbmnds has left #lisp [#lisp]
<adlai> jdz: good question, i'll have to meditate upon the reasons why anyone other than I would have such problems anyway
nika has joined #lisp
<_death> adlai: it may be a good idea to allow the user to choose the method of retrieval, for example to read from a file instead
q3d has joined #lisp
<jackdaniel> boeg: things which are obvious to you are not obvious to others. if everyone would assume that their knowledge is a common knowledge, then nobody would answer any question. I've asked because I was curious, and it seems to me that your answer was at least little condescending
<adlai> _death: thank you, that is a good suggestion
* adlai is also wondering about this whole 'swagger' nonsense, that almost asks for yet another #.
add^_ has joined #lisp
<boeg> jackdaniel: in regard to your first sentence, that is correct.
<Shinmera> no-defun-allowed: It has nothing to do with HTML
<Shinmera> ah fuck, was scrolled up
milanj has joined #lisp
<jackdaniel> I like to think that other sentences were also correct ;)
marcoxa has joined #lisp
<marcoxa> Hi
<beach> Hello marcoxa.
<beach> marcoxa: It looks like you are fairly new here. What brings you to #lisp?
<marcoxa> The question is what brings me to IRC. I have been doing Lisp for a veeeeeeeeeeeeeeery long time.
<beach> Great! Are you looking for a project to work on? I have plenty of suggestions.
<phoe> helloooo
dddddd has joined #lisp
<jackdaniel> beach: marcoxa presented the proposal for unifying float handling in common lisp implementations, I'm sure he has also other projects going on based on looking at CDR's
<marcoxa> beach I haveplenty of suggestions :)
<beach> Got it.
<marcoxa> :)
<phoe> oooh, it's you! hello, glad to have you around
<beach> Oh, you are Marco Antoniotti?
* jackdaniel tried to communicate that without spelling out names :)
<aeth> What would unified float handling be? IEEE short-, single-, and double-float? And then what for long-float? Or am I way off?
<jackdaniel> aeth: more like: what should happen when you add 1.0 to nan
<Shinmera> I see someone didn't attend ELS
<marcoxa> Yep. I figured out that by not hanging out here I was missing out a lot. So I am exploiting a lull in my day job and using ERC to lounge around.
<phoe> ^
<aeth> jackdaniel: ah
<beach> marcoxa: You are right about the missing-out part.
<beach> I keep telling Didier Verna and Jim Newton that.
<marcoxa> Yep.
<no-defun-allowed> Shinmera: Indeed it does not.
<White_Flame> what, are you saying comp.lang.lisp isn't the pinnacle of Lisp-oriented discussion?
* jackdaniel have never joined usenet
<jackdaniel> but I saw archived emails with plenty of fucks and personal insults
* White_Flame throws a big "/s" in the air
<marcoxa> Coming to the LIA Rabbit Hole I spoke about at ELS. If anybody is interested I can give access to the repository that contains the extremely raough draft of the LIA/CL spec. Also, now that I got the hang of this thing, I could set up a specialized channel on IRC. What do you think?
<jackdaniel> I'd be interested in having access to the repository. at the very least I could make a pull request which adds missing information about ECL.
<phoe> hmmm, easye would likely want to do the same regarding ABCL
<jackdaniel> if you want to create a channel, I would suggest making it more general than LIA/CL, i.e #cdr, so other issues common for cl implementers could be discussed there
<phoe> I would join #cdf
<phoe> s/cdf/cdr/
<marcoxa> jackdaniel I think two channels would be in order. One thing is the CDR discussions, the discussion on the LIA spec is going to be quite detailed and it will require some form of consensu making. Remember that LW and Franz should come onboard.
<jackdaniel> my point is that making too many channels would only impact the membership
<jackdaniel> it is not that people would chat about cdr proposals all day long
<marcoxa> Sorry guys, I have to leave for a couple of hours. Our fridge is empty :) Send me an email if you want access to the repo.
<phoe> yes, I kinda wonder if there will be enough volume for a separate IRC channel
<jackdaniel> and your email is? :)
<phoe> marcoxa: bon appetit and good luck hunting
<marcoxa> marco dot antoniotti at unimib.it will do. Ciao
<jackdaniel> thanks, see you
marcoxa has quit [Quit: Lunch time.]
emys has joined #lisp
<no-defun-allowed> Perhaps this is way too rude, but why the hell do some published libraries (declare (debug 0))? Are they trying to save the last few kilobytes that having lambda lists uses?
<jackdaniel> having debug information may also influence a performance
<_death> no-defun-allowed: maybe it's a claim of quality.. the code is perfect, no need for debugging
<jackdaniel> usually optimization on/off is a function of speed/debug options
<jackdaniel> i.e ecl pushes debugging frames onto the frame stack when the function is called
<no-defun-allowed> Well, (debug 1) is the "alternative" here. That doesn't do much more, does it?
<edgar-rft> no-defun-allowed: (declare (debug 0)) means they are not interested in seeing *your* bugs :-)
<jackdaniel> well, if you have debug 0, ecl does not push said frames
<jackdaniel> if you have debug 1, it does!
<no-defun-allowed> Right.
<phadthai> a mailing list would likely be better than an irc channel for CDR work (if it doesn't already exist)
<phadthai> cool
<phoe> sounds worth reviving in this context
<phadthai> then I'm unsure what irc would really add, as people are unlikely to be able to meet at the right time
<phadthai> well, maybe still a good thing to have
emys has quit [Ping timeout: 246 seconds]
emys has joined #lisp
decent-u` has joined #lisp
decent-username has quit [Ping timeout: 265 seconds]
scymtym has quit [Ping timeout: 256 seconds]
emys has quit [Ping timeout: 240 seconds]
scymtym has joined #lisp
Krystof has joined #lisp
toorevitimirp has quit [Remote host closed the connection]
toorevitimirp has joined #lisp
q3d has quit [Ping timeout: 240 seconds]
bendersteed has joined #lisp
toorevitimirp has quit [Remote host closed the connection]
toorevitimirp has joined #lisp
hsaziz has joined #lisp
Lord_of_Life_ has joined #lisp
toorevitimirp has quit [Remote host closed the connection]
karlosz has quit [Quit: karlosz]
toorevitimirp has joined #lisp
Lord_of_Life has quit [Ping timeout: 264 seconds]
Lord_of_Life_ is now known as Lord_of_Life
Bike has joined #lisp
SGASAU has quit [Remote host closed the connection]
SGASAU has joined #lisp
emys has joined #lisp
decent-u` has quit [Quit: ERC (IRC client for Emacs 26.3)]
decent-username has joined #lisp
toorevitimirp has quit [Remote host closed the connection]
toorevitimirp has joined #lisp
emys has quit [Ping timeout: 260 seconds]
emys has joined #lisp
<jmercouris> any reason why slime is instantly disconnecting from swank?
<phoe> jmercouris: what does the inferior-lisp buffer say?
<jmercouris> I do not have an inferior lisp buffer, i am starting swank in a separate image
<jmercouris> not starting it via slime
<phoe> what does the terminal output of that separate image say?
<jmercouris> I will launch it via terminal and tell you
<jmercouris> one moment please
<phoe> are there any hints in the emacs' *Messages* buffer?
<jmercouris> Lisp connection closed unexpectedly: connection broken by remote peer when I kill the image
<jmercouris> one second I'll start clean
<jmercouris> so, terminal says: <INFO> [13:52:17] "Swank server started at port 4006"
<jmercouris> and; ;; Swank started at port: 4006.
<jmercouris> which makes sense so far
<jmercouris> then it says the following after I connect http://dpaste.com/3NW53X4
toorevitimirp has quit [Remote host closed the connection]
<phoe> that sounds good
<jmercouris> then the following
<jmercouris> messages show Connected. Are we consing yet?
<jmercouris> then i will try something llike (print "lol")
<jmercouris> and instantly : slime-connection: Connection closed.
<jmercouris> in *Messages*
<jmercouris> terminal reports no more output for the lisp image
<phoe> huh, no idea
<jmercouris> here is my sbclrc http://dpaste.com/2WDCTSS
<phoe> should work
<jmercouris> this is the only line in my .swank.lisp (setf swank:*globally-redirect-io* t)
OMGOMG has joined #lisp
<jmercouris> this is my settings for Lisp in Emacs http://dpaste.com/3K2QJY6
toorevitimirp has joined #lisp
<jmercouris> it was working yesterday
<jmercouris> literally nothing changed
<phoe> did you restart emacs?
<jmercouris> yes
<jmercouris> maybe I should try a -q
Nilby has joined #lisp
<phoe> I'm puzzled
<jmercouris> as am I
<jmercouris> because normal slime works
<jmercouris> no wait
<jmercouris> I take that back
<jmercouris> normal slime crashes instantly
<jmercouris> WHAT
<jmercouris> I have a slime events buffer
<jmercouris> does this give you an idea: http://dpaste.com/0SHH4WF
<jmercouris> ?
<phoe> nope, no idea yet.
shifty has joined #lisp
<jmercouris> WAS
vaporatorius has joined #lisp
vaporatorius has quit [Changing host]
vaporatorius has joined #lisp
<jmercouris> do you think emptying my cache would help?
Bourne has quit [Read error: Connection reset by peer]
<Grue`> jmercouris: try (setf sb-impl::*default-external-format* :utf-8) in .sbclrc
rogersm has joined #lisp
<jmercouris> phoe: it was one of the slime contribs acting up for some reason
<phoe> jmercouris: oh! which one?
<jmercouris> phoe: I haven't figured out which one, i'll figure it out later
<phoe> OK
<jmercouris> i just removed them for now, i have work to do
hsaziz has quit [Ping timeout: 246 seconds]
v0|d has joined #lisp
SGASAU has quit [Remote host closed the connection]
SGASAU has joined #lisp
toorevitimirp has quit [Remote host closed the connection]
toorevitimirp has joined #lisp
ljavorsk has quit [Ping timeout: 246 seconds]
corpix has joined #lisp
corpix_ has quit [Remote host closed the connection]
pve has quit [Ping timeout: 246 seconds]
pve has joined #lisp
ggole has joined #lisp
roelj has joined #lisp
rogersm has quit [Quit: Leaving...]
toorevitimirp has quit [Remote host closed the connection]
krid has joined #lisp
rwcom3 has joined #lisp
corpix_ has joined #lisp
rwcom has quit [Ping timeout: 256 seconds]
rwcom3 is now known as rwcom
corpix has quit [Remote host closed the connection]
SGASAU has quit [Remote host closed the connection]
cosimone has quit [Remote host closed the connection]
cosimone has joined #lisp
SGASAU has joined #lisp
corpix_ has quit [Remote host closed the connection]
jruiz has joined #lisp
corpix has joined #lisp
patlv has joined #lisp
jruiz has quit [Ping timeout: 264 seconds]
jruiz__ has joined #lisp
IRC-Source_21 has joined #lisp
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
JohnMS_WORK has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/]
red-dot has joined #lisp
emys has quit [Ping timeout: 246 seconds]
amerlyq has quit [Quit: amerlyq]
emys has joined #lisp
jmercouris has left #lisp ["Exit."]
jmercouris has joined #lisp
<jmercouris> I'm working with cl-cffi-gtk and I'm having a small issue
<jmercouris> not sure why it is not able to properly transform the g-error from a signal
gko has joined #lisp
<jmercouris> and here is my code, very simple: http://dpaste.com/22EGG97
<jmercouris> so this is probably a bug in cl-cffi-gtk...
emys has quit [Ping timeout: 246 seconds]
esotericalgo has quit [Changing host]
esotericalgo has joined #lisp
niceplaces has quit [Ping timeout: 240 seconds]
turona has quit [Ping timeout: 246 seconds]
niceplace has joined #lisp
keep_learning has quit [Quit: This computer has gone to sleep]
ahungry has joined #lisp
choegusung has joined #lisp
choegusung has quit [Client Quit]
<flip214> beach: just stumbled upon a Naggum post that referenced you, and found https://dept-info.labri.u-bordeaux.fr/~strandh/Teaching/MTP/Common/Strandh-Tutorial/psychology.html. JFI I get SSL warnings for that site, not that it matters much.
<beach> Use the metamodular version instead.
<beach> I had no idea that Naggum ever referred to me. I didn't even know he had ever heard of me.
varjag has quit [Quit: ERC (IRC client for Emacs 25.2.2)]
<flip214> not directly, but that link came up in one of his replies
<beach> Oh, I guess I even had some exchanges with him.
* adlai wonders how long you gotta incubate an ulcer until it begins to tell you who's got good ideas
turona has joined #lisp
<beach> adlai: What would the "ulcer" be in this case?
orivej has quit [Ping timeout: 246 seconds]
Inline has joined #lisp
Josh_2 has joined #lisp
<adlai> unless i've been suffering from pervasive disinformation, Erik Naggum died of worrying too much about how to educate people to pick up his mantle after he was gone
<beach> Oh, I see.
<Bike> well, he died of ulcerative collitis, which is pretty nasty
sjl_ has joined #lisp
orivej has joined #lisp
* adlai refrains from further discussion of the subject, at least until better understanding of the various literatures
emacsomancer has quit [Read error: Connection reset by peer]
emacsomancer has joined #lisp
<_death> the treatment of UC inflammations can be very nasty as well
cosimone has quit [Quit: Quit.]
entel has joined #lisp
cosimone has joined #lisp
MerlinTheWizard has joined #lisp
bitmapper has joined #lisp
gabiruh has joined #lisp
theseb has joined #lisp
<theseb> I asked yesterday why macros must be defined in the toplevel.....but couldn't you define them anywhere and form a closure? i.e. just save the local environment with the macros and drag it around?
<phoe> theseb: you can
<theseb> phoe: oh good
<theseb> thanks
<phoe> that's a unique way of using them though
<phoe> not many people do that
<jdz> After all, a macro is just a function.
<beach> theseb: For example (let ((x 0)) (defmacro m () (incf x)))
<beach> theseb: (list (m) (m) (m)) => (1 2 3)
<theseb> phoe: http://www.lispworks.com/documentation/HyperSpec/Issues/iss104_w.htm says "Compilers, for example, may not recognize these forms
<theseb> properly in other than top-level contexts". At least one implementation
<theseb> has interpreted this to mean that it is permissible to simply refuse
<theseb> to compile defining macros that do not appear at top-level"
<beach> theseb: The file compiler is limited in what it can represent in a FASL file, so there are limitations.
<phoe> theseb: issues aren't a normative part of the standard. This text relates to pre-ANSI CL Lisp implementations.
<phoe> this issue, also, explicitly permits for macros to be defined not in toplevel; see the "Proposal" part.
jonatack has quit [Ping timeout: 240 seconds]
<Bike> it's a quotation from Common Lisp the Language, even, which is definitely not normative
jonatack has joined #lisp
jprajzne has quit [Quit: Leaving.]
xallad has joined #lisp
xallad has left #lisp [#lisp]
frgo_ has quit []
Cymew has quit [Ping timeout: 240 seconds]
gabiruh has quit [Ping timeout: 246 seconds]
frgo has joined #lisp
fbmnds has joined #lisp
fbmnds has left #lisp [#lisp]
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
IRC-Source_21 is now known as sam68
scymtym_ has joined #lisp
scymtym has quit [Ping timeout: 246 seconds]
fourier has joined #lisp
SGASAU has quit [Remote host closed the connection]
SGASAU has joined #lisp
vivit has joined #lisp
efm has quit [Ping timeout: 246 seconds]
red-dot has joined #lisp
KDr21 has joined #lisp
femi has quit [Ping timeout: 256 seconds]
KDr2 has quit [Ping timeout: 260 seconds]
<pjb> theseb: this is worse than what beach shown. (list (m) (m) (m)) could also return (2 4 6) or (12 7 2) or whatever actually.
femi has joined #lisp
<pjb> AFAICR, there's no left-to-right order of macroexpansion enforced. What's sure, is that a macro can be expanded more than once. Therefore the state of a macro that mutates state can be very different from what you would expect.
Bourne has joined #lisp
scymtym_ has quit [Remote host closed the connection]
scymtym has joined #lisp
shifty has quit [Ping timeout: 260 seconds]
ruricolist has joined #lisp
gko has quit [Ping timeout: 256 seconds]
kiwi_60 has joined #lisp
kiwi_60 has quit [Client Quit]
xkapastel has joined #lisp
grabarz has joined #lisp
fourier has quit [Ping timeout: 240 seconds]
karlosz has joined #lisp
orivej has quit [Ping timeout: 246 seconds]
twelvemonkeys has quit [Ping timeout: 256 seconds]
twelvemonkeys has joined #lisp
ArthurStrong has joined #lisp
grabarz has quit [Quit: Textual IRC Client: www.textualapp.com]
karlosz has quit [Quit: karlosz]
akoana has joined #lisp
buffergn0me has joined #lisp
SGASAU has quit [Remote host closed the connection]
SGASAU` has joined #lisp
lxbarbosa has joined #lisp
davsebam1e has joined #lisp
davsebamse has quit [Ping timeout: 260 seconds]
souron_the_evil has quit [Ping timeout: 240 seconds]
MerlinTheWizard has quit [Ping timeout: 256 seconds]
fourier has joined #lisp
izh_ has joined #lisp
sam68 has quit [Quit: Connection closed]
SGASAU` has quit [Remote host closed the connection]
SGASAU` has joined #lisp
efm has joined #lisp
lalilulelo has joined #lisp
<theseb> If a lisp uses environments, instead of having a single variable lookup table, does that alone immediately imply it is lexically scoped?
efm has quit [Ping timeout: 246 seconds]
fourier has quit [Ping timeout: 240 seconds]
ayuce has joined #lisp
<decent-username> Can anyone even come up with a use case, where a having side effects during expansion is actually useful?
cosimone has quit [Quit: Quit.]
<Bike> quicklisp prints a dot whenever an expansion occurs while it's loading something. cheap progress note.
<LdBeth> it might be useful to communicate with other macros so further macro expends of subexps can be controlled
<theseb> oh wait....n/m....you have environments w/ dynamic scope too
<Bike> you can do that with symbol-macrolet and stuff
<buffergn0me> Side-effects during macroexpansion are extremely useful for all kinds of compile-time checks
<Bike> this pushnew's conses but with the default eql test, so it'll push teh same list on multiple times
<buffergn0me> Bike: You are right. I need to fix that
<_death> can be useful in debugging
dddddd_ has joined #lisp
orivej has joined #lisp
sugarwren has joined #lisp
MerlinTheWizard has joined #lisp
sz0 has quit [Quit: Connection closed for inactivity]
dddddd has quit [Ping timeout: 246 seconds]
dddddd__ has joined #lisp
tinga has joined #lisp
ggole has quit [Quit: Leaving]
dddddd_ has quit [Ping timeout: 264 seconds]
vlatkoB has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
<tinga> Are intrusive lists something one sometimes uses in Common Lisp? A possible advantage (aside of saving an indirection / separate allocation) is that data items still have all of their methods directly, but implicitly know their parent (and/or child).
<Bike> what's an intrusive list
<tinga> A list whose cells are stored inside of another data structure.
<tinga> Instead of (cons (foo 1) (cons (foo 2) nil)) you'd create the list as (foo 1 (foo 2 nil))
kpoeck has joined #lisp
<Bike> oh, sure, people do that sometimes. only example i can think of is the dynamic environments in sicl, though i think beach changed that
<tinga> (This is done very commonly in C, e.g. in the Linux Kernel.)
<Bike> probably because if you don't have dynamic typing, a general list is more annoying to deal with
<tinga> Or equally annoying, whereas intrusive lists are more efficient.
lalilulelo has quit [Quit: Leaving]
<tinga> But I'm not really coming from the efficiency angle, but from an angle where you want to know the parent of an item while handling the item, so you don't have the surrounding cons to get to the parent;
<tinga> and if I'd pass around the cons cell instead, it's annoying to extract the actual record each time I want to access it.
<pjb> the big difference is that an element can belong only to one intrusive list, but it can belong to several lists.
<tinga> Yep, sure.
Inline has quit [Ping timeout: 246 seconds]
<phoe> does this annoy no one else
<_death> what about "Switching to the BALLAND2006 optimizer"
<phoe> that too
<phoe> I've made issues on both cxml and closure-common and they didn't get any response so far
<Bike> is it loading twice?
<phoe> nope
<_death> or asdf warnings giving advice to the maintainer of cl-ppcre
<phoe> two different systems
<phoe> that too
<_death> that's life
<phoe> no, that's compile-time printing to *standard-output*
hiroaki has quit [Ping timeout: 260 seconds]
buffergn0me has quit [Ping timeout: 240 seconds]
milanj has quit [Quit: This computer has gone to sleep]
<Bike> probably a good time for a compiler note, come think
<phoe> we don't have no compiler notes in standard though
<phoe> and no trivial-compiler-note either
dalz has left #lisp ["Kicked by @appservice-irc:matrix.org : issued !quit command"]
hiroaki has joined #lisp
dddddd__ is now known as dddddd
fourier has joined #lisp
<phoe> .......closure-common seems to have absolutely no tests whatsoever
<phoe> aaaaaagh
<Grue`> I never noticed the "yes, using code points" part before and now I won't be able to unsee it, thanks
dale_ has joined #lisp
dale_ is now known as dale
<phoe> huh
<phoe> I just learned a beautiful hack while reading closure source code
<phoe> (defun rt-white-space-p (char) (let ((stream (make-string-input-stream (string char)))) (eq :eof (peek-char t stream nil :eof))))
<Bike> there should really be a way to get the syntax type of a character.
* phoe adds it to the ideas-for-cltl4 bucket
<Bike> it's in eclector, at least
ruricolist has quit [Ping timeout: 246 seconds]
ruricolist has joined #lisp
sugarwren has quit [Ping timeout: 272 seconds]
ruricolist has left #lisp [#lisp]
<Grue`> (rt-white-space-p #\IDEOGRAPHIC_SPACE) => nil
<phoe> haha
buffergn0me has joined #lisp
<Bike> and if you try (read-from-string (format nil "A~cA" #\IDEOGRAPHIC_SPACE)), you will get one symbol with a three character name
<Bike> so the function is consistent with the implementation. implementation might not be consistent with japanese, though.
<Grue`> given it's a html parser, i think this method might be detecting for actual whitespace in html files, in which case the implementation is wrong
<Grue`> for unicode definition of whitespace, this test works: (cl-unicode:has-property char "WhiteSpace")
Kingsy has quit [Ping timeout: 240 seconds]
<phoe> should closure-common depend on cl-unicode?
MerlinTheWizard has quit [Ping timeout: 240 seconds]
<_death> is this the only case where it could use cl-unicode?
<phoe> I honestly have no idea
<phoe> I'm munching on its rune reading/writing logic
<_death> many times introducing a dependency is overkill.. instead you can make it easy for the user to make the connection
<phoe> yes, to make a toggle easy if cl-unicode is present
<_death> maybe with a protocol or a function argument or a special.. extensibility as usual
eta has quit [Quit: Gateway shutdown]
MerlinTheWizard has joined #lisp
nika has quit []
<Grue`> what is even closure-common? if it depends on cl-ppcre or cl-interpol like most things do, it already depends on cl-unicode
eta has joined #lisp
buffergn0me has quit [Ping timeout: 244 seconds]
<_death> oh
<phoe> Grue`: some code for the old closure browser
<phoe> and no, it doesn't depend on them
denis__ has joined #lisp
fourier has quit [Ping timeout: 240 seconds]
izh_ has quit [Ping timeout: 246 seconds]
aeth has quit [Quit: Reconnecting]
aeth has joined #lisp
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
SGASAU` has quit [Remote host closed the connection]
rgherdt has joined #lisp
SGASAU` has joined #lisp
denis__ has quit [Quit: Leaving]
pilne has joined #lisp
pve has quit [Quit: leaving]
shifty has joined #lisp
Cymew has joined #lisp
narimiran has quit [Ping timeout: 260 seconds]
Cymew has quit [Ping timeout: 264 seconds]
SGASAU` has quit [Remote host closed the connection]
SGASAU` has joined #lisp
xkapastel has quit [Quit: Connection closed for inactivity]
<scymtym> phoe: it is also for needed for cxml and xpath if i'm not mistaken
<phoe> scymtym: yes
<scymtym> (and i saw your issues but didn't have time (or a good solution) for a proper response)
<phoe> yes, I guessed something like that; no problem
<scymtym> huh, i seem to remember fixing SIMPLE-ROD at least once
kpoeck has quit [Ping timeout: 240 seconds]
voidlily has quit [*.net *.split]
bacterio has quit [*.net *.split]
Xach has quit [*.net *.split]
zigpaw5 has quit [*.net *.split]
hvxgr has quit [*.net *.split]
zymurgy has quit [*.net *.split]
ft has quit [*.net *.split]
johs has quit [*.net *.split]
lowryder has quit [*.net *.split]
rotty has quit [*.net *.split]
tephra has quit [*.net *.split]
cross has quit [*.net *.split]
ssake has quit [*.net *.split]
dlowe has quit [*.net *.split]
cyberlard has quit [*.net *.split]
thecoffemaker has quit [*.net *.split]
jfb4 has quit [*.net *.split]
Xach has joined #lisp
ssake has joined #lisp
tephra has joined #lisp
hvxgr has joined #lisp
ft has joined #lisp
zigpaw5 has joined #lisp
johs has joined #lisp
karlosz has joined #lisp
dlowe has joined #lisp
cross has joined #lisp
lowryder has joined #lisp
rotty has joined #lisp
bacterio has joined #lisp
voidlily has joined #lisp
<scymtym> i don't remember how i was involved, but that instance was https://github.com/sharplispers/closure-common/commit/e3c5f5f454b72b01b89115e581c3c52a7e201e5c . closure-common is two steps ahead though and defines SIMPLE-ROD two more times
zymurgy has joined #lisp
jfb4 has joined #lisp
<phoe> ...huh, how, why
cyberlard has joined #lisp
<phoe> twice in package :runes, once in :utf8-runes
thecoffemaker has joined #lisp
MerlinTheWizard has quit [Ping timeout: 240 seconds]
<phoe> nope, not touching that today
* phoe goes to sleep
jonatack has quit [Ping timeout: 260 seconds]
TwoNotes has joined #lisp
jonatack has joined #lisp
z147 has joined #lisp
TwoNotes has quit [Client Quit]
arbv has quit [Quit: ZNC - https://znc.in]
buffergn0me has joined #lisp
krid has quit [Ping timeout: 256 seconds]
jfrancis_ has joined #lisp
jfrancis has quit [Read error: Connection reset by peer]
arbv has joined #lisp
westerns has quit [Quit: Connection closed for inactivity]
SGASAU` has quit [Quit: ERC (IRC client for Emacs 26.3)]
SGASAU has joined #lisp
ahungry has quit [Remote host closed the connection]
keep_learning has joined #lisp
krid has joined #lisp
Jesin has quit [Quit: Leaving]
MerlinTheWizard has joined #lisp
Aurora_v_kosmose has joined #lisp
ym has joined #lisp
sjl_ has quit [Ping timeout: 264 seconds]
<theseb> newb closure question...since closures are "functions + environments"......does EVERY language with lexical scoping and regular functions have closures?
pjb has quit [Ping timeout: 272 seconds]
<aeth> probably not, it needs to be built into the language
<aeth> Closures allocate.
lxbarbosa has quit [Remote host closed the connection]
torbo has joined #lisp
MerlinTheWizard has quit [Ping timeout: 240 seconds]
Jesin has joined #lisp
Necktwi_ has joined #lisp
ayuce has quit [Remote host closed the connection]
Necktwi has quit [Ping timeout: 260 seconds]
MerlinTheWizard has joined #lisp
ayuce has joined #lisp
<theseb> aeth: ok thanks
frgo has quit [Remote host closed the connection]
frgo has joined #lisp
pjb has joined #lisp
duncan_ has quit [Ping timeout: 246 seconds]
dddddd has quit [Quit: dddddd]
gravicappa has quit [Ping timeout: 244 seconds]
reggie__ has quit [Remote host closed the connection]
decent-username has quit [Ping timeout: 246 seconds]
MerlinTheWizard has quit [Ping timeout: 240 seconds]
Oladon has joined #lisp
X-Scale` has joined #lisp
X-Scale has quit [Ping timeout: 256 seconds]
X-Scale` is now known as X-Scale
karlosz has quit [Quit: karlosz]
karlosz has joined #lisp
z147 has quit [Quit: z147]
MerlinTheWizard has joined #lisp
realtimdunbar has joined #lisp
realtimdunbar has quit [Client Quit]
random-nick has quit [Ping timeout: 256 seconds]
Lord_of_Life_ has joined #lisp
theseb has quit [Quit: Leaving]
Lord_of_Life has quit [Ping timeout: 246 seconds]
Lord_of_Life_ is now known as Lord_of_Life
terpri has quit [Remote host closed the connection]
terpri has joined #lisp
westerns has joined #lisp
pjb has quit [Ping timeout: 246 seconds]
lxbarbosa has joined #lisp
souron_the_evil has joined #lisp
MerlinTheWizard has quit [Remote host closed the connection]
MerlinTheWizard has joined #lisp
rgherdt has quit [Ping timeout: 272 seconds]