Bike changed the topic of #lisp to: Common Lisp, the #1=(programmable . #1#) programming language<http://cliki.net/> logs:<https://irclog.whitequark.org/lisp,http://ccl.clozure.com/irc-logs/lisp/> | SBCL 1.4.0, CMUCL 21b, ECL 16.1.3, CCL 1.11.5
damke_ has joined #lisp
Kaisyu has joined #lisp
damke has quit [Ping timeout: 264 seconds]
trocado has joined #lisp
fmcatsup has joined #lisp
fmcatsup has quit [Client Quit]
citron has joined #lisp
nowhere_man has joined #lisp
Pixel_Outlaw has joined #lisp
nowhereman_ has quit [Ping timeout: 240 seconds]
Kundry_Wag has quit [Remote host closed the connection]
Cymew has joined #lisp
fikka has quit [Ping timeout: 264 seconds]
failproofshark has quit [Ping timeout: 246 seconds]
fikka has joined #lisp
Cymew has quit [Ping timeout: 256 seconds]
fisxoj has quit [Quit: fisxoj]
didi has joined #lisp
<didi> Is there a size limit for the length of a &rest parameter or the size of an apply argument?
<Bike> clhs call-arguments-limit
<didi> Nah, wAAy higher.
<Bike> what?
<didi> The value of call-arguments-limit.
<didi> This is such a frustrating bug. I updated SBCL but it still keep happening. I am trying to isolate it, but no luck yet.
warweasle has joined #lisp
<didi> It is as if X from (dolist (x list) ...) goes beyond the end of the list.
jibanes has quit [Ping timeout: 264 seconds]
jibanes has joined #lisp
ebzzry_ has quit [Remote host closed the connection]
ebzzry_ has joined #lisp
wheelsucker has quit [Quit: Client Quit]
<didi> OK, I feel I am closing in. This either have to do with DEFMETHOD or the size of a &rest parameter. I changed the method to a DEFUN with a straight parameter and it computed without an error.
PinealGlandOptic has joined #lisp
<didi> Aha! If I copy-seq the &rest parameter, no error occurs.
<Bike> oh, maybe due to the dynamic extent of rest arguments then.
<didi> Uuuh.
fisxoj has joined #lisp
<didi> Bike: Shouldn't I expect the rest argument to live enough for other functions to use it?
<Xach> You can use it but not change it
<Bike> i think so, yeah, but there are- yeah that.
<didi> Xach: Aaah. Interesting.
<didi> This is getting better.
Kundry_Wag has joined #lisp
<didi> I don't directly change it. Could a method's &key or DOLIST change it? This is weird. /me continues to dig
fikka has quit [Ping timeout: 240 seconds]
<Xach> didi: can you share the code?
AxelAlex has joined #lisp
Kundry_Wag has quit [Ping timeout: 264 seconds]
trocado has quit [Ping timeout: 240 seconds]
Pierpa_ has joined #lisp
fikka has joined #lisp
<didi> Xach: I am trying to isolate it. As soon as I do it, I will.
FreeBirdLjj has joined #lisp
<didi> Although, maybe the size of the function and/or variables plays a role here, by Bike comment on dynamic extend.
<Bike> well like naggum said rest lists arne't dynamic extent unless you declare them so
<didi> Uuuh.
<didi> So... no cake for passing a &rest list to other functions?
<Bike> cake?
<didi> Just trying to lighten up my day. I mean, I shouldn't pass &rest lists to other functions?
<Bike> no, it's fine.
burzos has joined #lisp
<didi> Bleh.
* didi is lost
<Bike> just don't destroy them. don't edit rest lists.
warweasle has quit [Quit: Leaving]
<Bike> since copying the list fixes your problem, i'm guessing you do so by accident.
ninegrid has quit [Read error: Connection reset by peer]
asarch has joined #lisp
ninegrid has joined #lisp
<Pierpa_> didi> can't you check a different implementation? in this way a lot of hypotheses can be pruned
<Pierpa_> didi: ^
<didi> pierpa_: Heh. I think I'm way deep into SBCL; I might call SBCL-only functions in some places. ¯\_(ツ)_/¯
didi has quit [Read error: Connection reset by peer]
fisxoj has quit [Quit: fisxoj]
fisxoj has joined #lisp
EvW1 has quit [Ping timeout: 252 seconds]
roca has quit [Remote host closed the connection]
fisxoj has quit [Client Quit]
fisxoj has joined #lisp
thijso has quit [Ping timeout: 256 seconds]
smurfrobot has joined #lisp
<stacksmith> Hello. Why is (and) => T ? Superficially it seems that and returns nil or the last form...
thijso has joined #lisp
milanj has quit [Quit: This computer has gone to sleep]
smurfrobot has quit [Ping timeout: 240 seconds]
dyelar has quit [Ping timeout: 252 seconds]
BlueRavenGT has quit [Read error: Connection reset by peer]
Guest6344 has joined #lisp
<Bike> truth is the identify of conjunction.
<Bike> same reason (+) is zero and (*) is one.
<Bike> (+ 0 x) = x, (* 1 x) = x, (and t x) = x.
<stacksmith> Aah. kind of like an implied T, remove x and all that's left is a T...
<Pierpa_> among all the arguments of (AND) is there any one which is false?
Oladon has joined #lisp
Pixel_Outlaw has quit [Quit: Leaving]
<Pierpa_> that's the definition of how AND works
FreeBirdLjj has quit [Remote host closed the connection]
<Zhivago> Yes, but Bike has the why of it.
<stacksmith> pierpa_: are there any true arguments that are true in (and)?
FreeBirdLjj has joined #lisp
<Pierpa_> I was giving a more down to earth and intuitive explanation :)
smurfrobot has joined #lisp
<Pierpa_> stacksmith: it's the false ones which rule
<stacksmith> pierpa_: appreciate the attempt, but it seems arbitrary.
<Pierpa_> whether there are any true arguments doesn't matter to the result of AND
<Pierpa_> whether there are any false ones does
<stacksmith> I'll accept it, although it makes no intuitive sense..
<Pierpa_> hmmm
<Bike> indeed, "and is true if all its arguments are true" is a pretty common explanation.
<Bike> thus the identity thing.
<Bike> on the opposite end, falsehood is the identity of disjunction. (or nil x) = x. so (or) is nil.
dyelar has joined #lisp
FreeBirdLjj has quit [Ping timeout: 256 seconds]
<stacksmith> OK, I think I get it. https://en.wikipedia.org/wiki/Vacuous_truth
<Bike> mhm.
<Pierpa_> stacksmith: good find
didi has joined #lisp
BlueRavenGT has joined #lisp
fikka has quit [Ping timeout: 264 seconds]
Guest6344 has quit [Read error: Connection reset by peer]
<didi> Oh well, the error finally brought down my computer. Lots of RAM consumption and stuff.
doesthiswork has joined #lisp
<didi> Ah, it is not me who is changing the rest parameter. If I don't copy-seq the rest parameter to the local (loop for x in rest-parameter ...), the error occurs. I am almost there.
damke has joined #lisp
smurfrobot has quit [Remote host closed the connection]
damke_ has quit [Ping timeout: 264 seconds]
citron has quit [Ping timeout: 264 seconds]
ebzzry_ has quit [Read error: Connection reset by peer]
sjl has joined #lisp
Louge has quit [Ping timeout: 268 seconds]
<didi> If anyone wants to look at the method, it is https://paste.debian.net/hidden/85956d89 . I'm even copying the rest parameter for my own use, and the error still occurs. This method calls lots of other functions, so I don't know how useful is to look only to it.
<didi> If I copy the rest argument before passing it to DOLIST, the error doesn't occur
fikka has joined #lisp
<didi> I suspect DOLIST is doing something naughty to the rest parameter.
sjl has quit [Ping timeout: 264 seconds]
<Pierpa_> nothing suspect jumps at the eye in this method...
<didi> pierpa_: Thank you for looking at it.
<Pierpa_> yw. DOLIST should do nothing the the list
<didi> Right? :-(
<Bike> so what is it you copy that removes the problem?
<didi> Bike: Let me show it.
<Bike> huh.
<Bike> seems buggy.
<didi> :-(
<Pierpa_> IIUC, the first version shows the bug and the second one doesn't. Right?
smurfrobot has joined #lisp
<didi> pierpa_: Right. Copying the rest argument before passing it to MAKE-HSET doesn't influence the occurrence of the error.
smurfrobot has quit [Remote host closed the connection]
smurfrobot has joined #lisp
<Pierpa_> complete darkness :(
<didi> ♪ hello darkness my old friend ♬
<Pierpa_> :)
<didi> ;-) I'm all day on this.
smurfrobot has quit [Ping timeout: 264 seconds]
<jcowan> That article on vacuous truth doesn't make clear that sentences like "All my dogs are green" has two logical forms:
<jcowan> For all x, my_dog(x) -> green(x) is vacuously true if I have no dogs
<jcowan> whereas the reading "Each member of {my_dogs} is green is vacuously _false_ if I have no dogs.
<jcowan> The first one has a negation in it, because A -> B = ~A or B, whereas the second does not
<Bike> how would you write out the second one, exactly?
<jcowan> I don't know any formal set theory, but it was explained to me in these terms by a logician
Louge has joined #lisp
<jcowan> (John Clifford)
<Pierpa_> I don't understand the second case
Louge has quit [Client Quit]
<Bike> i'm unaware of how the second case would be written out in regular first order logic in a way that differs from the first case
Louge has joined #lisp
<Bike> i mean, even before that junk, it's just a syllogism
<Pierpa_> the second case would be: All x, x in {my dogs} -> green(x)
<Bike> that's what jcowan wrote for the first case
<jcowan> The second case is a statement in set theory, not in FOPL
<Bike> a syllogistic statement, not a whole syllogism, a durr durr
<Bike> using set membership instead of a predicate doesn't really change anything
<jcowan> FOPL is a theory where the variables are unqualified
<jcowan> whereas here we have a qualified variable, whose domain is not every object (as in FOPL) but only the objects in the set
<Bike> the empty set.
<Pierpa_> hmmm
<Zhivago> I think the simplest way to consider it is that it is a not-invalid subset of a valid set.
smurfrobot has joined #lisp
<Zhivago> Which implies that when you take the union of that with another valid set you should get a valid set.
<Zhivago> (or intersection, for that matter)
nika has joined #lisp
smurfrobot has quit [Ping timeout: 240 seconds]
<Bike> so, like i have no dogs, and my pal Negasi has one green dog. we can say ««all dogs Negasi and Bike have are green» is true iff all dogs negasi has are green and all dogs bike has are green». all dogs negasi and i have are green, and all of negasi's dogs are green, so to make the equivalence work all of my dogs should be considered green as well.
<Bike> sensible enough i guess.
fikka has quit [Ping timeout: 264 seconds]
<Bike> but it does mean that "all A are B" doesn't imply "some A are B". it's my understanding that aristotle killed boole in a duel over this
fikka has joined #lisp
smurfrobot has joined #lisp
smurfrobot has quit [Remote host closed the connection]
smurfrobot has joined #lisp
<jcowan> Well, they definitely fought it out, but who's the winner is still an open question, as usual in philosophy
d4ryus1 has joined #lisp
orivej has joined #lisp
<Pierpa_> here https://plato.stanford.edu/entries/quantification/ there must be the answer. Unfortunately it is too long to read now :)
ebzzry_ has joined #lisp
smurfrobot has quit [Ping timeout: 240 seconds]
d4ryus has quit [Ping timeout: 268 seconds]
makomo has quit [Ping timeout: 240 seconds]
<Pierpa_> In particular 2.1
dtornabene has joined #lisp
Kundry_Wag has joined #lisp
quazimodo has quit [Ping timeout: 264 seconds]
ebzzry_ has quit [Remote host closed the connection]
pagnol has quit [Ping timeout: 268 seconds]
w2h has joined #lisp
w2h has quit [Client Quit]
Kundry_Wag has quit [Ping timeout: 264 seconds]
Mutex7 has quit [Quit: Leaving]
ebzzry_ has joined #lisp
oxo1o1o1o has quit [Read error: Connection reset by peer]
oxo1o1o1o has joined #lisp
pagnol has joined #lisp
oxo1o1o1o has quit [Read error: Connection reset by peer]
Kundry_Wag has joined #lisp
oxo1o1o1o has joined #lisp
<Bike> oh yeah, there's lldb.
<didi> \o/
<didi> Yay me.
<Bike> if i put the dolist in a function and call it it's still an error but there's no crash...
<Bike> well. it's probably some resource depletion deal.
<Bike> my call-arguments-limit is like 4.6e18. it's probably bullshit
<Bike> well, definitely bullshit, my computer physically can't fit that much
Kundry_Wag has quit [Ping timeout: 260 seconds]
<didi> Something is happening with that rest argument.
smurfrobot has joined #lisp
<didi> When I enter SLIME's backtrace, the rest argument has a (0 . 0) value.
Bike has quit [Quit: Lost terminal]
<didi> So, what should I do? Is this a SBCL bug?
<didi> Am I doing something wrong?
smurfrobot has quit [Ping timeout: 240 seconds]
<loke> didi: does that code drop you into lldb?
rumbler31 has quit [Remote host closed the connection]
<didi> loke: SLIME's debugger, so I'm guessing "yes". Here what it looks like: https://paste.debian.net/hidden/9987bb28
<loke> No. That's not lldb
<didi> Oh, OK.
smurfrobot has joined #lisp
shifty has joined #lisp
<loke> I just tested your code.
fisxoj has quit [Quit: fisxoj]
fikka has quit [Ping timeout: 240 seconds]
<loke> Repeating 1 or 2 times still works. Repeating 3 times makes it fail.
<loke> Clearly this is an issue caused by your absolutely massive list of &REST parameters
FareTower has joined #lisp
<didi> If it's relevant, I am running SBCL version "1.4.5" with --dynamic-space-size 4096 and --control-stack-size 32.
<didi> loke: Indeed.
<loke> Why are you doing that? It's generally quite a bad idea.
<didi> The POC it's in the order of magnitude of the rests I've been dealing with.
<loke> You should change that code.
safe has joined #lisp
<didi> Yeah, I guess.
<loke> If you have more than a few tens of arguments, you should consider changing your design.
<didi> Oh, OK. My idea of designing it like LIST, for example.
<loke> If it's many thousands (200k in your case) make it a vector.
<didi> You mean, the rest parameter?
<loke> A list is much better than rest arguments of course, but a vector would probably be faster still (depending on what you intend to do with it)
<didi> oic
<loke> But the key thing is to get rid of that ridiculous &REST parameter
<didi> But in my defense, LIST uses it!
<loke> didi: Yes, but not for the purpose of creating lists several hundreds (or even thousands) of elements long.
<didi> :-)
<loke> So it's a pretty weak defence :-)
<didi> :-P
Kundry_Wag has joined #lisp
Kundry_Wag has quit [Ping timeout: 264 seconds]
<Pierpa_> They've been too optimist when defining CALL-ARGUMENT-LIMIT. Resetting it to 50 should fix this problem. 50 btw is way more than reasonaly high.
smokeink has joined #lisp
<loke> pierpa: I agree with that.
<Zhivago> I'm not sure that I can agree. Having call-argument-limit makes things like code generators much harder to deal with.
<Zhivago> Having it work, but be slow, would be far preferable.
<Zhivago> C should be a sufficient illustration of the perils of 'it works here by accident'.
smurfrobot has quit [Remote host closed the connection]
<stylewarning> ELS accept/reject notifications are out
tempestnox has joined #lisp
<Pierpa_> loke: a code generator which must work by the spec and not by accident can rely on not more than 50 arguments, anyway.
<rme> ccl's call-arguments-limit is 65K, and that seems pretty reasonable to me
pagnol has quit [Ping timeout: 256 seconds]
<Pierpa_> if it works then it's reasonable :)
<rme> a limit of 4.6e18 is so high as to be useless
fikka has joined #lisp
sjl has joined #lisp
damke_ has joined #lisp
<dtornabene> does anyone know of any security tooling done in lisp? or people who do security work in lisp whose brain I could pick about some questions...?
damke has quit [Ping timeout: 264 seconds]
<smokeink> web security ? or binary protection kind of security ?
<dtornabene> I'm aware of the ecl-spyware guy from like the dotcom boom era
smurfrobot has joined #lisp
<dtornabene> smokeink: either, anything really
sjl has quit [Ping timeout: 240 seconds]
<Pierpa_> bodyguards management software?
<dtornabene> pierpa_: .....not what I had in mind! but sounds interesting
<Pierpa_> ah :)
<dtornabene> so I guess I should throw one of them out there
citron has joined #lisp
<dtornabene> rosette https://emina.github.io/rosette/ is this beautiful tool, and there's been some really interesting work done in the last few years utilizing SAT/SMT around security issues
<dtornabene> stuff like Sean Heelans work https://www.cprover.org/dissertations/thesis-Heelan.pdf
<dtornabene> Automatic Generation of Control Flow Hijacking Exploits for Software Vulnerabilites
quazimodo has joined #lisp
<smokeink> well you can do pretty much any kind of securing tooling with lisp, I think an intelligent sql-injection tester with lisp would be cool, but I haven't heard of any yet
BlueRavenGT has quit [Ping timeout: 246 seconds]
<dtornabene> that does sound cool
smurfrobot has quit [Ping timeout: 248 seconds]
<smokeink> it's like python on steroids, with super speed and the full power interactive developing and other things that make the program logic easier to follow
<dtornabene> I've googled a little bit, was hoping there was some code to look at, haven't found anything yet. Which struck me as odd, given what would seem like the strengths of lisp for security work
<smokeink> yeah it's fucking surprising
citron has quit [Ping timeout: 260 seconds]
<smokeink> actually I also wanted to see such stuff in Lisp, but most lispers are into areas of research other than security
<dtornabene> like, in the applications tab of rosettes website theres a tool for verifying BGP policies, a couple of other things, but no offensive tools
<dtornabene> a niche!!
<smokeink> interactively fiddling with machine code :)
mareskeg has joined #lisp
<burzos> Why does format automatically insert a newline at 80 characters?
<smokeink> it should not
<burzos> Unless maybe it's a problem with my terminal.
<burzos> Ok.
mareskeg has quit [Client Quit]
__main__ has quit [Read error: Connection reset by peer]
<smokeink> dtornabene: (not lisp related, but nice nonetheless) "I've a dream: A peer-to-peer network, where services like search engines or social networks aren't offered by big companies, who in turn need to make money by selling the privacy of their users. Where all data is encrypted, so that access is only possible for people who have the key and really are authorized. Which layman can use without cryptic user interfaces. Where the browser is a platform for
<smokeink> running useful applications without the mess of Flash and JavaScript. Without the lag of "buffer bloat" and without the speed problems of a protocol not designed to be assisted by hardware." http://www.complang.tuwien.ac.at/anton/euroforth/ef16/papers/paysan.pdf https://fossil.net2o.de/net2o/doc/trunk/wiki/net2o.md
_main_ has joined #lisp
<burzos> The difficulty I think is that we have the technical ability to do that^ piece-by-piece but that won't get critical adoption.
mareskeg has joined #lisp
<burzos> You'd need a facebook competitor, not just something that did encrypted chat correctly.
<burzos> Which you could then add more stuff to later.
_main_ is now known as __main__
fikka has quit [Ping timeout: 240 seconds]
<stylewarning> burzos: are you using format with ~A with pretty printing?
<burzos> Probably, if pretty printing is default on.
nowhere_man has quit [Read error: Connection reset by peer]
nowhere_man has joined #lisp
<burzos> Printing some s-expressions.
<stylewarning> burzos: is it breaking when you print a data structure or a string?
<stylewarning> Yeah those are getting pretty printed probably
<stylewarning> Try binding *print-pretty* to nil
<burzos> Cool, thanks.
fikka has joined #lisp
smurfrobot has joined #lisp
smurfrobot has quit [Remote host closed the connection]
<didi> Thank you, everybody. Now everything is good and well. Tho, IMO, SBCL shouldn't accept calls for functions with more arguments it can handle. I even got some wrong answers from the offending function, so it didn't crash every time.
mareskeg has quit [Quit: mareskeg]
<loke> didi: I'd recommend you take that to the SBCL developer's mailing list.
<didi> loke: Thanks.
oxo1o1o1o has quit [Read error: Connection reset by peer]
oxo1o1o1o has joined #lisp
oxo1o1o1o has quit [Read error: Connection reset by peer]
dieggsy has quit [Ping timeout: 256 seconds]
oxo1o1o1o has joined #lisp
oxo1o1o1o has quit [Read error: Connection reset by peer]
oxo1o1o1o has joined #lisp
Oladon has quit [Quit: Leaving.]
smurfrobot has joined #lisp
smurfrobot has quit [Remote host closed the connection]
safe has quit [Read error: Connection reset by peer]
schoppenhauer has quit [Ping timeout: 246 seconds]
schoppenhauer has joined #lisp
cromachina has joined #lisp
dddddd has quit [Remote host closed the connection]
smokeink has quit [Remote host closed the connection]
Kundry_Wag has joined #lisp
smokeink has joined #lisp
SaganMan has joined #lisp
Kundry_Wag has quit [Ping timeout: 265 seconds]
CrazyEddy has quit [Ping timeout: 248 seconds]
PinealGlandOptic has quit [Quit: leaving]
rumbler31 has joined #lisp
smurfrobot has joined #lisp
Pierpa_ has quit [Quit: Page closed]
rumbler31 has quit [Ping timeout: 248 seconds]
smurfrobot has quit [Remote host closed the connection]
tempestnox has quit [Quit: WeeChat 1.6]
orivej has quit [Ping timeout: 240 seconds]
CrazyEddy has joined #lisp
oleo has quit [Quit: Leaving]
vlatkoB has joined #lisp
asarch has quit [Quit: Leaving]
pyface has joined #lisp
khrb_t has quit [Remote host closed the connection]
damke has joined #lisp
khrbt has joined #lisp
damke_ has quit [Ping timeout: 264 seconds]
Kundry_Wag has joined #lisp
rumbler31 has joined #lisp
Kundry_Wag has quit [Ping timeout: 256 seconds]
doesthiswork has quit [Quit: Leaving.]
<stacksmith> didi: SBCL reports that 'call-argument-limit' is 4611686018427387903
rumbler31 has quit [Ping timeout: 240 seconds]
AxelAlex has quit [Quit: AxelAlex]
smokeink has quit [Remote host closed the connection]
rumbler31 has joined #lisp
smurfrobot has joined #lisp
stacksmith has quit [Ping timeout: 240 seconds]
rumbler31 has quit [Ping timeout: 268 seconds]
<SaganMan> Morning my glib globs
smurfrobot has quit [Remote host closed the connection]
thallia- has quit [Ping timeout: 264 seconds]
thallia has joined #lisp
xrash has joined #lisp
smurfrobot has joined #lisp
rumbler31 has joined #lisp
<k-hos> wubbalubbadubdub
mishoo has joined #lisp
<SaganMan> lol, you know what I'm upto k-hos :)
smurfrobot has quit [Remote host closed the connection]
<beach> Good morning everyone!
rumbler31 has quit [Ping timeout: 240 seconds]
<SaganMan> Morning beach
sjl has joined #lisp
smokeink has joined #lisp
smurfrobot has joined #lisp
<pillton> smokeink: You should look at https://ipfs.io/.
<smokeink> thanks
sjl has quit [Ping timeout: 240 seconds]
burzos has quit [Ping timeout: 260 seconds]
smurfrobot has quit [Ping timeout: 240 seconds]
fikka has quit [Ping timeout: 240 seconds]
smurfrobot has joined #lisp
fikka has joined #lisp
smurfrobot has quit [Remote host closed the connection]
Arcaelyx has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Karl_Dscc has joined #lisp
smurfrobot has joined #lisp
zooey has quit [Remote host closed the connection]
smurfrobot has quit [Remote host closed the connection]
zooey has joined #lisp
shka_ has joined #lisp
flamebeard has joined #lisp
rumbler31 has joined #lisp
rumbler31 has quit [Ping timeout: 248 seconds]
scymtym has quit [Ping timeout: 240 seconds]
damke_ has joined #lisp
damke has quit [Ping timeout: 264 seconds]
Karl_Dscc has quit [Remote host closed the connection]
sword has quit [Remote host closed the connection]
dtornabene has quit [Remote host closed the connection]
smurfrobot has joined #lisp
<Shinmera> Looks like my ELS paper has been accepted.
d4ryus1 is now known as d4ryus
smurfrobot has quit [Remote host closed the connection]
smurfrobot has joined #lisp
varjag has joined #lisp
<Shinmera> It is a bit funny to me that two reviewers note that the paper is too short, despite the fact that demo papers are supposed to be no more than two pages, which I've already exceeded.
<jackdaniel> you should have used larger pages, duh!
<jackdaniel> :)
<jackdaniel> congrats
smurfrobot has quit [Remote host closed the connection]
<Shinmera> Thanks. I guess I'll make the paper longer still for the revision.
salva has joined #lisp
Kundry_Wag has joined #lisp
FareTower has quit [Ping timeout: 264 seconds]
Kundry_Wag has quit [Ping timeout: 240 seconds]
FareTower has joined #lisp
<beach> Shinmera: Congratulations! We are still waiting for the decision on ours.
<Shinmera> Apparently there were 21 submissions and only 14 of them are getting accepted to make the conference less crowded.
nullman has quit [Ping timeout: 260 seconds]
Cymew has joined #lisp
nullman has joined #lisp
<beach> Oh, no sorry. Got the information. Two out of two accepted. YAY!
<Shinmera> Wow, congratulations
<beach> Thanks.
ebrasca has quit [Remote host closed the connection]
<Shinmera> If the amount of submissions keeps up it might start to make sense to extend the symposium by another day.
<beach> Indeed.
<beach> "amount of stuff", "number of things".
<Shinmera> Gah
sword has joined #lisp
makomo has joined #lisp
mflem has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/]
<dim> maybe I should register ;-)
<dim> (it's failing now, so I might get around to do that only tomorrow)
<Shinmera> What is failing?
<dim> it looks like a timeout, but I'm travelling on using not-that-reliable networks, so I don't think it's on the ELS website end
<dim> tomorrow I should be home again, with solid connection, and I'll retry then
samla has joined #lisp
<Shinmera> Oh, okey. If you have any problems, please let me know.
smurfrobot has joined #lisp
shka_ has quit [Ping timeout: 240 seconds]
DemolitionMan has joined #lisp
<samla> Does anyone here have any experience with the 40ants fork of Weblocks?
<dim> Shinmera: sure, thanks!
<samla> And more of a softball question: anyone got any experience and opinion of weblocks?
<Shinmera> My opinion on web frameworks is that they shouldn't try to do too much and should give me full control over how things work. Weblocks stands in opposition to that.
<Shinmera> It's a different approach, and "just not for me."
Kevslinger has quit [Quit: Connection closed for inactivity]
<samla> For sure, if I understand it correctly (automatically updating widgets in a tree through AJAX) then it might be a nice way of making something like a SPA+Ceramic desktop program
<samla> And the 40ants branch seems to have ripped out a lot of superfluous stuff
<jackdaniel> I've worked a little with weblocks and the idea was pretty cool
<jackdaniel> not sure if it is the best approach for web stuff, but still a very nice thing to play with
<samla> jackdaniel: is what I wrote above in parens about automatically updating widgets true or have I misunderstood everything :-)?
smokeink has quit [Remote host closed the connection]
<jackdaniel> yes, in this sense it was dynamic
smokeink has joined #lisp
<jackdaniel> for instance I've created a widget which changed application language. clicking it did update whole website to a localized version
<jackdaniel> (keep in mind that it wasn't redirection to some other location, it worked like a toggle button)
<samla> Nice! How did you/weblocks propagate that kind of change throughout the system?
<jackdaniel> but: 1) above certain level of complexity it was hard for me to change it (lack of experience with weblocks?); 2) I've hit bugs quite frequently and project seemed to be abandoned
<jackdaniel> I don't know, probably through *magic*
smurfrobot has quit [Remote host closed the connection]
<jackdaniel> (and don't remember, I've used it 2 years ago or more for about two weeks, so..)
<jackdaniel> if I had to guess, I'd bet on websockets, but I can't really tell
<samla> Hehe :-) the server/client communication is through JavaScript magic (not websockets actually!)
pyface has quit [Ping timeout: 256 seconds]
<Shinmera> Websockets are too modern
Cymew has quit [Read error: Connection reset by peer]
Cymew has joined #lisp
fikka_ has joined #lisp
l1x has quit [Ping timeout: 256 seconds]
rann has quit [Ping timeout: 256 seconds]
Kaisyu has quit [Ping timeout: 256 seconds]
terrorjack has quit [Ping timeout: 256 seconds]
fikka has quit [Ping timeout: 246 seconds]
Kaisyu has joined #lisp
l1x has joined #lisp
rann has joined #lisp
terrorjack has joined #lisp
samla has quit [Remote host closed the connection]
_cosmonaut_ has joined #lisp
sjl has joined #lisp
pyface has joined #lisp
ghard has joined #lisp
sjl has quit [Ping timeout: 240 seconds]
schweers has joined #lisp
schweers has quit [Client Quit]
schweers has joined #lisp
mishoo has quit [Read error: Connection reset by peer]
mishoo_ has joined #lisp
quazimodo has quit [Ping timeout: 264 seconds]
xxp has joined #lisp
deng_cn has joined #lisp
rumbler31 has joined #lisp
_cosmonaut_ has quit [Ping timeout: 264 seconds]
Kundry_Wag has joined #lisp
milanj has joined #lisp
deng_cn has quit [Read error: Connection reset by peer]
raynold has quit [Quit: Connection closed for inactivity]
<schweers> is there a way to use slime on a remote host, so that disconnecting (or network failure) will not terminate the current execution?
<schweers> I don’t mean to not terminate the lisp session, I know that there is :dont-close for that
<schweers> but I have a long running command which I’d like to watch in slime, and I’d like to be able to do this even in the presence of network failures
deng_cn has joined #lisp
hhdave has joined #lisp
Kundry_Wag has quit [Ping timeout: 256 seconds]
<schweers> I know I could use a seperate thread, but I guess debugging that is a bit tricky.
rumbler31 has quit [Ping timeout: 260 seconds]
FareTower has quit [Ping timeout: 245 seconds]
<smokeink> what could be tricky about having it in a separate thread? slime also works in a thread of its own (I am not saying there isn't anything tricky, just asking, cuz I also want to know)
<smokeink> you can launch an emacs on the remote machine
<jackdaniel> you may simply start swank server on remote machine
<jackdaniel> if it is started with options :dont-close t :style :spawn
<jackdaniel> then when you get disconnected and when you connect again you get the same session
<jackdaniel> (of course application has to have its own loop which won't die in the meantime)
heisig has joined #lisp
<jackdaniel> schweers: ↑
fikka_ has quit [Ping timeout: 256 seconds]
energizer has quit [Ping timeout: 256 seconds]
<schweers> hmm, :style :spawn does the trick? I’ll try that
<schweers> jackdaniel: should this also keep running if I issue `slime-disconnect' from emacs?
quazimodo has joined #lisp
_cosmonaut_ has joined #lisp
scymtym has joined #lisp
<schweers> it doesn’t :/
<schweers> smokeink: I don’t see a way to attach a repl to a separate thread. Not sure how to properly phrase this.
<schweers> I don’t get what is printed to standard-output, for instance, although that should be easy to fix
<smokeink> yes that's easy to fix
<schweers> and regarding running emacs on the remote: yes, possible, but kind of eww ;)
<smokeink> you can run a terminal-mode emacs
<schweers> but maybe it really is the best solution right now
<smokeink> and connect to the terminal session using ssh and screen/tmux
<smokeink> I think any (break) inside the thread will trigger the debugger
<schweers> oh I just realized that the output went to the swank server, so it wasn’t gone
<smokeink> in the worst case to get a repl after the debugger has popped out, you can evaluate (loop (print (eval (read)))) or something like that , in the frame
<smokeink> or you could redirect the output to a log file
<smokeink> or to a global variable, since your lisp session doesn't die
<smokeink> you can also just run the plain simple repl over the ssh+screen/tmux session, without slime or emacs
sjl has joined #lisp
<schweers> I was thinking of this last option, but I don’t like it very much. I’ve become quite accustomed to having slime available. So I guess it will be running a local emacs instance
sjl has quit [Ping timeout: 240 seconds]
hhdave_ has joined #lisp
hhdave has quit [Ping timeout: 256 seconds]
hhdave_ is now known as hhdave
<smokeink> another option: you can run a gui Emacs on the remote computer and do X forwarding through ssh so that the emacs window is rendered on your local desktop (not sure how it will behave when the connection gets interrupted)
<schweers> probably suffers from the same problems on network failure
fikka has joined #lisp
<smokeink> https://www.xpra.org/ "it allows you to run programs, usually on a remote host, direct their display to your local machine, and then to disconnect from these programs and reconnect from the same or another machine, without losing any state. "
wigust- has quit [Ping timeout: 240 seconds]
xrash has quit [Remote host closed the connection]
<schweers> huh. maybe not what I want right now, but might be cool otherwise.
<schweers> although ... maybe I’ll give it a try
<shka> emacs has a server mode
<schweers> shka: why on earth didn’t I think of this earlier? I use that anyway!
<schweers> one can forward it over ssh, right?
<shka> never tried, but i assume yes
<shka> i don't see why not
<schweers> I’m still waiting for the remote host to finish something else, then I’ll try one of these solutions. Thanks for the input!
<wooden_> q
<wooden_> quit
<wooden_> exit
<wooden_> logout
<wooden_> ~7~7~q
<TMA> wooden_: use / in front of quit
<wooden_> exit
<wooden_> help
<smokeink> https://serverfault.com/questions/19634/how-to-reconnect-to-a-disconnected-ssh-session "I can't believe no one has mentioned MOSH;Mosh is a seperate protocol that can hook into the SSH login process, it keeps your session alive after days of disconnection, changing IP, high latency and so on."
<TMA> wooden_: use /quit
<jackdaniel> /quit
<wooden_> bash
<wooden_> reboot
<schweers> oh dear, mosh seems to have its own crypto :/
<loke> schweers: Really?
<schweers> I’m not entirely sure, but the FAQ has a section which suggests this, as the security of mosh is compared to ssh and ssl. It uses ssh in the beginning though.
lnostdal has joined #lisp
Louge has quit [Quit: Louge]
Louge has joined #lisp
<loke> schweers: You'd assume the SSH connection is used to exchange the session keys, making the opportity to screw stuff up smaller.
<loke> At least they don't have to deal with key exchange, diffie-hellman, assymetric keys etc.
<dTal> apparently is uses AES
<dTal> seems like a perfectly sound design
_cosmonaut_ has quit [Ping timeout: 268 seconds]
sjl has joined #lisp
Kundry_Wag has joined #lisp
TeMPOraL has joined #lisp
Louge has quit [Quit: Louge]
<TeMPOraL> a quick question - did anyone here had a problem with log4slime (log4cl), in which the menu worked, but REPL buffer didn't colorize/propertize log output?
shifty has quit [Ping timeout: 246 seconds]
sjl has quit [Ping timeout: 256 seconds]
pyface has quit [Ping timeout: 265 seconds]
Kundry_Wag has quit [Ping timeout: 260 seconds]
oxo1o1o1o_ has joined #lisp
oxo1o1o1o has quit [Ping timeout: 264 seconds]
<TeMPOraL> ok, found it; prettify-symbols-mode breaks half of SLIME coloring, and it also breaks log4slime
smokeink has quit [Ping timeout: 260 seconds]
deng_cn has quit [Read error: Connection reset by peer]
deng_cn has joined #lisp
markong has joined #lisp
pagnol has joined #lisp
jcowan_ has joined #lisp
jcowan has quit [Ping timeout: 246 seconds]
igemnace has quit [Read error: Connection reset by peer]
xxp has quit [Quit: ERC (IRC client for Emacs 25.3.2)]
igemnace has joined #lisp
_cosmonaut_ has joined #lisp
makomo has quit [Ping timeout: 256 seconds]
smokeink has joined #lisp
earl-ducaine has quit [Ping timeout: 260 seconds]
earl-ducaine has joined #lisp
nika has quit []
deng_cn has quit [Read error: Connection reset by peer]
rumbler31 has joined #lisp
Kundry_Wag has joined #lisp
nowhere_man has quit [Ping timeout: 256 seconds]
Louge has joined #lisp
deng_cn has joined #lisp
Kundry_Wag has quit [Ping timeout: 255 seconds]
rumbler31 has quit [Ping timeout: 255 seconds]
m00natic has joined #lisp
siraben has joined #lisp
smurfrobot has joined #lisp
smurfrobot has quit [Remote host closed the connection]
orivej has joined #lisp
rumbler31 has joined #lisp
citron has joined #lisp
Trystam has joined #lisp
Tristam has quit [Ping timeout: 256 seconds]
Trystam is now known as Tristam
siraben has quit [Ping timeout: 246 seconds]
siraben has joined #lisp
damke has joined #lisp
damke_ has quit [Ping timeout: 264 seconds]
TCZ has joined #lisp
deng_cn has quit [Remote host closed the connection]
deng_cn has joined #lisp
Lycurgus has joined #lisp
FareTower has joined #lisp
TCZ has quit [Quit: Leaving]
<flip214> does somebody know of a CL library that help with text analysis? ie. building word vectors in N dimensions etc.?
<jackdaniel> yes, cl-nlp
deng_cn has quit [Remote host closed the connection]
deng_cn has joined #lisp
<Lycurgus> wow the ACM site is apparently down
<dlowe> send more computing machinery
<Lycurgus> that looks nice, would like to some more integrations though, e.g. wordnet, maybe that comes next or is in there but not upfront
<Lycurgus> at one time they had their own servers running on VMS
<Lycurgus> when the web was new
<Lycurgus> and i copped juan@acm.org
<Lycurgus> well juan@acm.org was b4 the web existed
<Lycurgus> cl-nlp is also a sweet name
<Lycurgus> prolly will give it some play
<Lycurgus> bet there was one b4 this one
<ecraven> who is the artist that sings https://www.gnu.org/fun/jokes/eternal-flame.en.html in the ogg all the way down that page?
<schweers> Julia Ecklar
<schweers> as far as I know
smurfrobot has joined #lisp
<ecraven> that song captures what lisp means to me better than anything else I've ever seen
<ecraven> thanks, I took that to mean that the original song was by julia ecklar..
<schweers> I first heard the song ages ago, long before I knew any lisp. the more I learnt, the more I understood what the song was about.
smurfrobot has quit [Remote host closed the connection]
<schweers> As far is I know, the original song was written and performed by her, as well as the performance of the parody done by her.
sjl has joined #lisp
<schweers> But as I’m not at all familiar with any of her work, besides this one, I don’t know for sure
<Lycurgus> God
<Lycurgus> lots and lots of
heisig has quit [Quit: Leaving]
<Lycurgus> *like to see some more
doesthiswork has joined #lisp
jcowan_ has quit [Ping timeout: 240 seconds]
zbir has joined #lisp
milanj has quit [Quit: This computer has gone to sleep]
heisig has joined #lisp
Kundry_Wag has joined #lisp
Kundry_Wag has quit [Read error: Connection reset by peer]
deng_cn has quit [Remote host closed the connection]
Kundry_Wag has joined #lisp
Bike has joined #lisp
Oladon has joined #lisp
<pierpa> Don't FSF still recommends C? They're more than a bit schizophrenic about lisp
milanj has joined #lisp
<schweers> the FSF recommends programming languages?
<dlowe> I think they still maintain that guile is the one true extension language
<schweers> too bad that hardly anyone seems to take them on that advice
<schweers> but other than that I didn’t know they recommend languages
<schweers> Pierpa: how are they schizophrenic about lisp?
<pierpa> schweers: in the past they did. I'm checking if they still do.
<dlowe> anyway, if we're going to talk about the lisp family instead of common lisp, let's bring it to ##lisp
smurfrobot has joined #lisp
Inoperable has joined #lisp
Inoperable has quit [Client Quit]
smurfrobot has quit [Remote host closed the connection]
haz has joined #lisp
Inoperable has joined #lisp
warweasle has joined #lisp
deng_cn has joined #lisp
BlueRavenGT has joined #lisp
tomlukeywood has joined #lisp
nowhere_man has joined #lisp
nowhereman_ has joined #lisp
nowhere_man has quit [Ping timeout: 240 seconds]
red-dot has quit [Read error: Connection reset by peer]
red-dot has joined #lisp
haz has quit [Quit: Leaving]
tomlukeywood has quit [Quit: tomlukeywood]
python476 has joined #lisp
siraben has quit [Ping timeout: 264 seconds]
siraben has joined #lisp
pierpa has quit [Ping timeout: 260 seconds]
Kevslinger has joined #lisp
citron has quit [Ping timeout: 276 seconds]
__rumbler31 has joined #lisp
smurfrobot has joined #lisp
smurfrobot has quit [Remote host closed the connection]
EvW has joined #lisp
_cosmonaut_ has quit [Ping timeout: 264 seconds]
pierpa has joined #lisp
<smokeink> can (describe #'func) be made to return the lambda list of #'func instead of just printing it to the standard output? or is there any alternative function for doing that?
deng_cn has quit [Read error: Connection reset by peer]
<Bike> clhs function-lambda-expression
<Bike> but you probably want something implementation specific instead.
<Bike> what are you doing with it?
deng_cn has joined #lisp
<smokeink> I'm playing with a code that converts postfix math to lisp (prefix) math http://pastecode.ru/40a1c8b/
<smokeink> it only works with operations that accept 2 params. (rpn 4 sqrt) fails for example
<smokeink> I'm curious what ways are there to make it work with sqrt (only 1 param) and other functions that need more than 2 params
raynold has joined #lisp
<Bike> probably you need an arities database you look at
<Bike> oh. and you want to use the lambda lists for this. i see.
<Bike> the lisp operators aren't so well behaved for this. for example, floor/ceiling take one OR two arguments.
<Bike> and of course the basic + - take however many.
pierpa has quit [Ping timeout: 260 seconds]
al-damiri has joined #lisp
Louge has quit [Quit: Louge]
<smokeink> the ones that take &rest ... however many should only take two (this works fine for + * - / < > at least )
_cosmonaut_ has joined #lisp
Oladon has quit [Quit: Leaving.]
<heisig> smokeink: I recently wrote some utilities to determine the lambda list and arity of arbitrary functions, maybe they are useful for you: https://github.com/marcoheisig/Petalisp/blob/master/utilities/function-lambda-lists.lisp
pierpa has joined #lisp
flamebeard has quit [Quit: Leaving]
arbv has quit [Ping timeout: 246 seconds]
<smokeink> nice,thanks guys
arbv has joined #lisp
<Shinmera> heisig: There's already trivial-arguments to determine the lambda list
<Shinmera> Colleen: look up trivial-arguments
<heisig> Shinmera: Oh, great! I should use that instead. However, it computes only the lambda list, not the arity.
<Shinmera> heisig: the arity is trivially computable with my other library, lambda-fiddle ;)
<heisig> Shinmera: Amazing! Next time I want to code something, I will just grep all your repositories first.
<Shinmera> Heh
<Shinmera> pjb probably also has a library for everything somewhere.
dmiles has quit [Ping timeout: 240 seconds]
asarch has joined #lisp
smurfrobot has joined #lisp
smurfrobot has quit [Remote host closed the connection]
fikka has quit [Ping timeout: 245 seconds]
smurfrobot has joined #lisp
dmiles has joined #lisp
smurfrobot has quit [Remote host closed the connection]
<shka> i am using trivial-arguments, and well, it just works
smurfrobot has joined #lisp
LiamH has joined #lisp
smurfrobot has quit [Remote host closed the connection]
oleo has joined #lisp
fikka has joined #lisp
<Shinmera> I would hope so
damke_ has joined #lisp
<heisig> I also hope so, I just started using it :)
rippa has joined #lisp
damke has quit [Ping timeout: 264 seconds]
creat has quit [Ping timeout: 252 seconds]
FreeBirdLjj has joined #lisp
pagnol has quit [Ping timeout: 260 seconds]
deng_cn has quit [Read error: Connection reset by peer]
DemolitionMan has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/]
deng_cn has joined #lisp
Kundry_Wag has quit [Remote host closed the connection]
_cosmonaut_ has quit [Ping timeout: 240 seconds]
comborico1611 has joined #lisp
fikka has quit [Ping timeout: 256 seconds]
energizer has joined #lisp
_cosmonaut_ has joined #lisp
smurfrobot has joined #lisp
wheelsucker has joined #lisp
makomo has joined #lisp
deng_cn has quit [Read error: Connection reset by peer]
deng_cn has joined #lisp
Kundry_Wag has joined #lisp
fikka has joined #lisp
EvW has quit [Ping timeout: 246 seconds]
FreeBirdLjj has quit [Ping timeout: 252 seconds]
Kundry_Wag has quit [Ping timeout: 245 seconds]
comborico1611 has quit [Quit: Konversation terminated!]
quazimodo has quit [Ping timeout: 268 seconds]
wigust has joined #lisp
smurfrobot has quit [Remote host closed the connection]
varjag has quit [Quit: ERC (IRC client for Emacs 24.5.1)]
leo_song has quit [Quit: ZNC 1.6.5+deb1 - http://znc.in]
Arcaelyx has joined #lisp
Kaisyu has quit [Quit: Connection closed for inactivity]
heisig has quit [Quit: Leaving]
deng_cn has quit [Read error: Connection reset by peer]
Kundry_Wag has joined #lisp
deng_cn has joined #lisp
siraben has quit [Ping timeout: 264 seconds]
jcowan_ has joined #lisp
hhdave has quit [Ping timeout: 240 seconds]
failproofshark has joined #lisp
bl1nd has joined #lisp
_cosmonaut_ has quit [Ping timeout: 240 seconds]
orivej has quit [Ping timeout: 256 seconds]
jcowan_ is now known as jcowan
yeticry has quit [Ping timeout: 263 seconds]
yeticry has joined #lisp
varjag has joined #lisp
butterthebuddha has quit [Max SendQ exceeded]
deng_cn has quit [Read error: Connection reset by peer]
deng_cn has joined #lisp
tomlukeywood has joined #lisp
butterthebuddha has joined #lisp
EvW1 has joined #lisp
pagnol has joined #lisp
python476 has quit [Remote host closed the connection]
stacksmith has joined #lisp
_cosmonaut_ has joined #lisp
dddddd has joined #lisp
cage_ has joined #lisp
pagnol has quit [Ping timeout: 248 seconds]
EvW1 has quit [Ping timeout: 256 seconds]
smurfrobot has joined #lisp
smurfrobot has quit [Remote host closed the connection]
Kundry_Wag has quit [Remote host closed the connection]
doesthiswork has quit [Ping timeout: 260 seconds]
EvW has joined #lisp
Kundry_Wag has joined #lisp
deng_cn has quit [Read error: Connection reset by peer]
Kundry_Wag has quit [Remote host closed the connection]
deng_cn has joined #lisp
raynold has quit [Quit: Connection closed for inactivity]
Karl_Dscc has joined #lisp
smokeink has quit [Ping timeout: 240 seconds]
Kundry_Wag has joined #lisp
igemnace has quit [Quit: WeeChat 2.1]
creat has joined #lisp
jcowan has left #lisp ["Leaving"]
earl-ducaine has quit [Ping timeout: 240 seconds]
earl-ducaine has joined #lisp
Kundry_Wag has quit [Read error: Connection reset by peer]
tomlukeywood has quit [Quit: tomlukeywood]
pillton has quit [Ping timeout: 248 seconds]
butterthebuddha has quit [Max SendQ exceeded]
Kundry_Wag has joined #lisp
butterthebuddha has joined #lisp
schweers has quit [Ping timeout: 256 seconds]
raynold has joined #lisp
mflem has joined #lisp
damke has joined #lisp
pierpa has quit [Ping timeout: 260 seconds]
damke_ has quit [Ping timeout: 263 seconds]
dieggsy has joined #lisp
shka_ has joined #lisp
m00natic has quit [Remote host closed the connection]
burzos has joined #lisp
<stacksmith> Good day everyone.
<onion> hi!
<didi> stacksmith: Indeed. But it appears to be much less than that.
<stacksmith> ?
EvW has quit [Ping timeout: 240 seconds]
<burzos> Does `(ql:quickload "linedit")` work for someone else? It is here https://www.quicklisp.org/beta/releases.html but quicklisp doesn't seem to find it.
<didi> stacksmith: <stacksmith> didi: SBCL reports that 'call-argument-limit' is 4611686018427387903
<stacksmith> Oh yeah.
<stacksmith> Have you found an empirical limit?
<Xach> burzos: sorry, that is a mistake on the website
<didi> stacksmith: Well, I can crash it with 200 k elements.
<burzos> Xach: The package has been dropped?
<Xach> burzos: yes. it does not work with current sbcl.
<stacksmith> didi: and you can work around it by copying the &rest (or something like that?)
<didi> stacksmith: Yeap.
<didi> Weird stuff.
deng_cn has quit [Read error: Connection reset by peer]
<|3b|> didi: that seems to be a bug, #sbcl is/was working on it earlier
<didi> |3b|: Oh, cool!
<stacksmith> didi: just out of idle curiosity - have you tried CCL?
<burzos> Ok, I see the build failure report now.
deng_cn has joined #lisp
<didi> stacksmith: I didn't. Someone said that CCL limits it to 60 k IIRC.
tomlukeywood has joined #lisp
kolko has joined #lisp
_cosmonaut_ has quit [Ping timeout: 264 seconds]
khisanth__ has quit [Ping timeout: 260 seconds]
bocaneri has quit [Read error: Connection reset by peer]
sunset_NOVA has joined #lisp
Kundry_Wag has quit [Remote host closed the connection]
kolko has quit [Ping timeout: 256 seconds]
khisanth__ has joined #lisp
comborico1611 has joined #lisp
pagnol has joined #lisp
sunset_NOVA has quit [Quit: Leaving]
dieggsy has quit [Remote host closed the connection]
SaganMan has quit [Quit: laters]
deng_cn has quit [Read error: Connection reset by peer]
pierpa has joined #lisp
tomlukeywood has quit [Quit: tomlukeywood]
deng_cn has joined #lisp
FareTower has quit [Ping timeout: 248 seconds]
cage_ has quit [Read error: Connection reset by peer]
cage_ has joined #lisp
nonlinear has joined #lisp
Naergon has quit [Ping timeout: 240 seconds]
Kundry_Wag has joined #lisp
<stacksmith> Could someone clarify: Bordeaux Threads api states: "Global bindings are shared between threads..." and yet *standard-output* is not usable inside a thread...
<shka_> stacksmith: yup
<stacksmith> Is it because *standard-output* is bound somewhere above?
<shka_> i don't really know, but i noticed this as well
<|3b|> it is probably usable, just not the same :)
<shka_> but it matters not, you can bind standard-output yourself and it will work
<shka_> that's what i do
<stacksmith> shka_: what do you bind it to?
<|3b|> and reasonably likely to have non-global bindings
<stacksmith> or is it with?
<|3b|> current value of the thread that started the new thread is frequently a reasonable default
<shka_> stacksmith: simply (let ((output *standard-output*)) (bt:make-thread (lambda () (let ((*standard-output* output))
<|3b|> or if you want something specific, you can save that in a separate global
<stacksmith> Have you tried *default-special-bindings* or the initial-bindings parameter in make-thread?
<|3b|> i think bt:make-thread has an option to specify default bindings so you don't need to do it manually
<shka_> and no, i don't know why it is like this, but multithreaded standard-output seems like a bad idea, so this may be design choice
<|3b|> more that "dynamic scope" is a bit hard to define when there are multiple stacks involved
<shka_> |3b|: it indeed does, but i never remember those :D
didi` has joined #lisp
<stacksmith> I am just trying to make sense of the docs... I suspect that *standard-output* is bound by a let somewhere above and is therefore not a clean global...
<|3b|> after (let ((*x* 1)) (make-thread ...)) that binding goes out of scope for calling thread, and make-thread exited, so reasonable to expect that binding to no longer exist
didi has quit [Disconnected by services]
<shka_> stacksmith: global != dynamic
didi` is now known as didi
<shka_> sharing dynamic scoped variable between threads does not sound like a great idea
<|3b|> and special maps well to thread-local
<stacksmith> Could you explain the difference between dynamic-extent and special declarations ?
asarch has quit [Quit: Leaving]
<stacksmith> crap, I have to run out for a bit...
vtomole has joined #lisp
<jackdaniel> stacksmith: dynamic-extent means, that you promise that variable won't escape from the function, so it may be allocated on a stack
<jackdaniel> special variable is, well, special, something different
fikka has quit [Ping timeout: 264 seconds]
azrael_ has joined #lisp
azrael_ has quit [Client Quit]
Kundry_Wag has quit [Remote host closed the connection]
Kundry_Wag has joined #lisp
Kundry_Wag has quit [Remote host closed the connection]
shifty has joined #lisp
tomlukeywood has joined #lisp
Kundry_Wag has joined #lisp
vlatkoB has quit [Remote host closed the connection]
<didi> Weirdly, the name "dynamic-extent" invokes, in my mind, an image of a variable that has infinite scope.
<|3b|> stacksmith: note that "dynamic-extent" is a specific declaration, while "dynamic extent" in prose is a slightly different thing
EvW has joined #lisp
<|3b|> or maybe more general things is a better phrasing
fikka has joined #lisp
<|3b|> "dynamic-extent" declaration applies to the /objects/ stored in a particular binding, while "dynamic extent" in general might apply to the binding itself
<|3b|> so all bindings of a special variable have "dynamic extent" (which is the meaning of the "special" declaration), but are not generally restricted to containing /objects/ with a dynamic extent (the meaning of the "dynamic-extent" declaration)
* |3b| isn't sure if that actually clarifies anything or not :p
fikka has quit [Ping timeout: 256 seconds]
xxp has joined #lisp
<hjudt> what can i do to completely delete a package? i have the problem that i deleted a package but when i try to reload it (ql:quickload :package), i get the error "The name xxxx does not designate any package. (Condition of type sb-kernel:simple-package-error)", backtrace starting with (sb-int:find-undeleted-package-or-lose "xxx")
<hjudt> retries like clear-configuration-and-retry do not work
<|3b|> first figure out if you actually mean package or system (ql loads systems)
deng_cn has quit [Read error: Connection reset by peer]
<hjudt> sbcl writes package. i guess i mean system.
<hjudt> but honestly i do not know
<hjudt> but yes i try to load a system
<|3b|> are you trying to delete files or a particular object in the lisp image?
<hjudt> i have loaded the system before, i do not want to delete files, only the packages i created. but i guess i need to delete the "system" too?
<dlowe> in lisp, a package is a bag of names, while a system is a set of build rules and source code
deng_cn has joined #lisp
<hjudt> i simply wanted to get rid of the package and reload it freshly with ql.
tomlukeywood has quit [Quit: tomlukeywood]
<hjudt> so that all vars etc are completely lost
<|3b|> probably easiest to just restart the lisp for that
<hjudt> and functions and methods etc too of course
<|3b|> though 'package' is probably the correct term
<hjudt> no, because other things are running at the same time but in different "packages"
<hjudt> reside in different packages
<Xach> hjudt: there is no easy generic way to do that.
<|3b|> yeah, restarting is less useful if you have state you want to maintain :/
<hjudt> but what may be the problem in my case?
<hjudt> it seemed to work once, but not the second time
<|3b|> loading CL code can make arbitrary changes to the state of the lisp image, so hard in general to undo that loading
<|3b|> you might try forcing reloading of (some of) the code
sunset_NOVA has joined #lisp
<hjudt> when i e.g. rename or delete a function or symbol, i usually can use fmakunbound/makunbound to get rid of the symbol. that works.
Kundry_Wag has quit [Remote host closed the connection]
<hjudt> i just don't want to do that manually for cleaning up, it is tedious. i thought deleting packages and reloading the system might solve it quickly.
Mutex7 has joined #lisp
fikka has joined #lisp
<|3b|> yeah, that should more or less work
<hjudt> i also entered a few statements at the repl to clean up the history, in case it is not garbage collected.
Kundry_Wag has joined #lisp
<|3b|> (it isn't 100%, since you will probably end up with various references to the old stuff, for example methods on generic functions from other packages specialized on classes from the 'deleted package')
<hjudt> ok, that could be the case. i have three packages in my system, which use each other.
phoe has quit [Ping timeout: 260 seconds]
<|3b|> is the code publicly visible anywhere?
fikka has quit [Ping timeout: 256 seconds]
<ym> Why there is an ability to return multiple values if I cannot directly pass them as function arguments?
<Bike> you can
<Bike> multiple value call
<ecraven> scheme has call-with-values
<ym> That's not what I mean telling "directly".
<|3b|> because they are useful even without that ability
phoe has joined #lisp
<|3b|> (probably more useful than with)
<hjudt> |3b|: at the moment no. i am unsure i could disclose it and most of it wouldn't be useful for anyone else.
<ym> What for example?
* |3b| expects (+ 1 (floor 7 2)) being interpreted as (+ 1 3 1) instead of (+ 1 3) would be annoying
damke_ has joined #lisp
<ym> (car (floor 7 2)) would work more clear.
<|3b|> and having to write (+ 1 (values (floor 7 2))) to just pass the primary value would be worse than having to do multiple-value-call on the rare occasions of actually wanting to add the remainder too for some reason
<ym> What?
<dlowe> real compilers notice when floor and mod are being used on the same values
<|3b|> many functions that return multiple values are used mostly for the primary value, and only a few uses need the extra values
disumu has joined #lisp
damke has quit [Ping timeout: 264 seconds]
<|3b|> it seems wasteful having to wrap all of the common case in (values) to get rid of the extra return values, just to simplify the few cases where you want the extra values /and/ want to pass them as adjacent arguments of some function
<sjl> gethash is one example
<ym> So returning multiple variables is another kludge made to avoid car?
Kundry_Wag has quit [Remote host closed the connection]
<ym> I'm telling about lists vs multiple values.
<|3b|> well CAR implies an allocation on the heap
<sjl> ym: the values aren't returned as a list -- they're returned directly. So you don't need to allocate memory
warweasle has quit [Quit: rcirc on GNU Emacs 24.4.1]
<ym> Aha.
<sjl> Having to allocate a fresh cons cell every time you looked up a value in a hash table would be annoying
<ym> Isn't this is the work of compiler - to optimize code?
<ym> But, never mind. I got the point. Thanks.
<|3b|> also consider places where you want to pass a function
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
<|3b|> having to pass (lambda (&rest foo) (car (apply 'some-function foo))) instead of just 'some-function would be rather annoying
<ym> Still I'd prefer to shift that responsibility on compiler.
fikka has joined #lisp
<|3b|> (along with remembering which functions return extra values that you never use)
<|3b|> the responsibility to remember that gethash returns extra values, then wrap it in a lambda to call car on it when you want to pass it to something that only wants a single non-list value returned?
<|3b|> that seems a bit beyond compiler work
rumbler31 has quit [Remote host closed the connection]
<ym> Wrapping in lambda to get only needed value from list is work of programmer, optimizing the code - work of compiler.
<ym> Can't get why that's annoying.
<|3b|> right, my point is that even if the compiler could optimize it, the code would be annoying and error prone
<ym> Bad programmer will make annoying and error prone code from whatever language gives.
<ym> But this is a matter of taste, I think.
deng_cn has quit [Read error: Connection reset by peer]
<|3b|> well, write (values (floor a b)) instead of just (floor a b) then :)
<ym> I don't ask what to do, I just curious why that feature is in standard.
<ym> And I got the point. Thanks again.
<|3b|> because it is useful (and/or because it was in older lisps that were being standardized)
deng_cn has joined #lisp
fourier has joined #lisp
wigust- has joined #lisp
vtomole_ has joined #lisp
wigust has quit [Ping timeout: 240 seconds]
vtomole has quit [Ping timeout: 260 seconds]
dtornabene has joined #lisp
Murii|osx has joined #lisp
shifty has quit [Ping timeout: 256 seconds]
shifty has joined #lisp
<didi> Because of a discussion earlier, TIL (funcall (let ((*x* 42)) (declare (special *x*)) (lambda () *x*))) => UNBOUND-VARIABLE
<vtomole_> clhs declare
<|3b|> yep, need to declare it in the function too if it isn't declared globally
scymtym has quit [Ping timeout: 240 seconds]
<Bike> i thought the idea was rather than the function doesn't close over the special binding
<|3b|> actually, i guess that doesn't help that case, since the local binding exits before the call anyway
<|3b|> yeah, i didn't read closely enough
<|3b|> don't need a declaration in the function, need an enclosing special binding around the call
cage_ has quit [Remote host closed the connection]
nowhereman_ has quit [Ping timeout: 248 seconds]
cage_ has joined #lisp
zbir has quit [Ping timeout: 260 seconds]
deng_cn has quit [Read error: Connection reset by peer]
deng_cn has joined #lisp
sunset_NOVA has quit [Quit: Leaving]
vtomole_ has quit [Ping timeout: 260 seconds]
sjl has quit [Ping timeout: 255 seconds]
cage_ has quit [Quit: Leaving]
disumu has quit [Remote host closed the connection]
Kundry_Wag has joined #lisp
deng_cn has quit [Read error: Connection reset by peer]
quazimodo has joined #lisp
emacsomancer has joined #lisp
scymtym has joined #lisp
deng_cn has joined #lisp
Kundry_Wag has quit [Ping timeout: 260 seconds]
jmercouris has joined #lisp
shka_ has quit [Ping timeout: 256 seconds]
wheelsucker has quit [Quit: Client Quit]
burzos has quit [Quit: Page closed]
Bike has quit [Ping timeout: 260 seconds]
deng_cn has quit [Read error: Connection reset by peer]
warweasle has joined #lisp
deng_cn has joined #lisp
orivej has joined #lisp
LiamH has quit [Quit: Leaving.]
damke has joined #lisp
damke_ has quit [Ping timeout: 264 seconds]
mikecheck has joined #lisp
red-dot has quit [Read error: Connection reset by peer]
red-dot has joined #lisp
dtornabene has quit [Remote host closed the connection]
dtornabene has joined #lisp
moei has quit [Read error: Connection reset by peer]
moei has joined #lisp
Karl_Dscc has quit [Remote host closed the connection]
xxp has quit [Quit: ERC (IRC client for Emacs 25.3.2)]
kobain has joined #lisp
razzy has quit [Read error: Connection reset by peer]
jmercouris has quit [Remote host closed the connection]
Bike has joined #lisp
EvW has quit [Ping timeout: 255 seconds]
zacts has quit [Quit: WeeChat 1.9.1]
zacts has joined #lisp
dtornabene has quit [Quit: Leaving]
pillton has joined #lisp
dtornabene has joined #lisp
spm_ has quit [Remote host closed the connection]
varjag has quit [Quit: ERC (IRC client for Emacs 25.2.1)]
eschatologist has quit [Remote host closed the connection]
Murii|osx has quit [Quit: Textual IRC Client: www.textualapp.com]
eschatologist has joined #lisp
Kundry_Wag has joined #lisp
Kundry_Wag has quit [Ping timeout: 240 seconds]
dtornabene has quit [Quit: Leaving]
trocado has joined #lisp
dtornabene has joined #lisp
Kaisyu has joined #lisp
Lycurgus has quit [Quit: Ex Chat]
Mutex7 has quit [Quit: Leaving]
makomo has quit [Ping timeout: 276 seconds]
nowhereman_ has joined #lisp
trocado has quit [Ping timeout: 265 seconds]
deng_cn has quit [Read error: Connection reset by peer]
al-damiri has quit [Quit: Connection closed for inactivity]
comborico1611 has quit [Quit: Konversation terminated!]
deng_cn has joined #lisp
warweasle has quit [Quit: Leaving]
mishoo_ has quit [Ping timeout: 256 seconds]
makomo has joined #lisp
orivej has quit [Ping timeout: 265 seconds]
nowhere_man has joined #lisp
nowhereman_ has quit [Ping timeout: 268 seconds]
smurfrobot has joined #lisp
Pixel_Outlaw has joined #lisp
smurfrobot has quit [Ping timeout: 240 seconds]
deng_cn has quit [Read error: Connection reset by peer]
deng_cn has joined #lisp
rumbler31 has joined #lisp
shifty has quit [Ping timeout: 256 seconds]
rumbler31 has quit [Ping timeout: 240 seconds]