Nilby has joined #commonlisp
trufas has quit [Ping timeout: 265 seconds]
trufas has joined #commonlisp
derelict has quit [Ping timeout: 252 seconds]
mister_m` has joined #commonlisp
cjb has joined #commonlisp
derelict has joined #commonlisp
<Xach> etimmons: do you make uiop releases?
srhm has quit [Remote host closed the connection]
selwyn has quit [Quit: Leaving]
<etimmons> Xach: No, Robert makes the releases. I've just been helping out with the development a lot recently
<Xach> Ok
<Xach> I don't think the latest uiop release works with the latest sbcl for many projects
<Xach> Maybe this is peculiar to my loading setup
<Xach> (where a new uiop might be loaded in an old asdf? possibly?)
<etimmons> That's concerning. Do you have a log?
akoana has quit [Quit: leaving]
<Xach> http://report.quicklisp.org/2021-07-07/failure-report/arrival.html#arrival - this is representative of a number of failures that all seem to fail in fare-utils
<Xach> http://report.quicklisp.org/2021-07-07/failure-report.html has more, though not exclusive to that issue
<Xach> failures started happening on july 3
random-nick has quit [Ping timeout: 252 seconds]
yitzi has quit [Quit: Leaving]
<etimmons> Huh. It kinda looks like it's using the `uiop:define-package` macro from uiop 3.3.5, but using the function `uiop:ensure-package` (which it expands to) from a previous uiop.
<etimmons> Not sure how off the top of my head how that can happen...
tyson2 has quit [Remote host closed the connection]
<Xach> well, i load asdf 3.3.1 explicitly, because that's what comes with sbcl. but i also download UIOP as a project as well.
* Xach scratches chin
<etimmons> Ah.. I have a theory. Do you reuse the fasl cache between builds of different systems?
<etimmons> I think some system A that depends on fare-utils also declares an explicit dependency on uiop
<etimmons> So when A was built, that latest uiop was loaded and the fasls for fare-utils include the 3.3.5 define-package expansion
<Xach> ah, yes, i do reuse it, that seems like a plausible explanation!
<Xach> and accounts for the fasl-time nature of the failure
* Xach wonders now how to escape from this problem
<etimmons> but fare-utils has no explicit dep on uiop and the chain starting from arrival doesn't have an explicit uiop dependncy or asdf schedules it after loading fare-utils
<etimmons> yeah, that's tricky... uiop is such a useful library, but it's special relationship with asdf can be a pain point
<etimmons> If you could convince everyone that uses uiop to explicitly declare it as a dep that'd solve it.
<Xach> Ha! ha! ha!
<etimmons> =P
<etimmons> Yeah, I know, definitely not happening
<etimmons> I wonder what a world would look like where ASDF had a private copy UIOP with different package names.
<etimmons> and UIOP was still distributed as a separate product
<etimmons> *system
<etimmons> you just would have to explicitly declare it instead of assuming asdf would magically load it for you
<Xach> I think UIOP does more than it needs to to support ASDF - some of it could be add-ons to ASDF, and some of it could be completely separated.
<Xach> I remember thinking Quicklisp would be sooooo popular I could "fix" stuff in CL because it would be loaded all the time. I'm glad I didn't try doing that.
notzmv has joined #commonlisp
<Xach> etimmons: thanks so much for the troubleshooting. great insight.
<etimmons> No worries!
<etimmons> As an only occasional user of Quicklisp, I too am glad you decided against that!
<etimmons> Dealing with uiop's specialness is already difficult
char has joined #commonlisp
Inline_ has joined #commonlisp
prxq has joined #commonlisp
Inline has quit [Ping timeout: 252 seconds]
luna-is-here has quit [Ping timeout: 258 seconds]
scymtym has quit [Ping timeout: 240 seconds]
luna-is-here has joined #commonlisp
edgar-rft has quit [Ping timeout: 246 seconds]
scymtym has joined #commonlisp
edgar-rft has joined #commonlisp
prxq_ has quit [Ping timeout: 252 seconds]
Fare has quit [Ping timeout: 246 seconds]
karlosz has quit [Quit: karlosz]
<Josh_2> So I just made a list in a defparameter with '((nil nil nil) (nil nil nil) (nil nil nil)) then used (setf (elt (first <my list>) 0) <my val>) and it changed the val of pos 0 in all the lists, whats up with that? Doesn't do it when I use (list ..)
<beach> Good morning everyone!
<beach> Josh_2: The compiler coerced all the lists. They are literals so you are not allowed to modify them.
<Josh_2> because I used quote?
<beach> Yes.
barthandelous has quit [Quit: barthandelous]
<Josh_2> Alrighty, thanks
<beach> s/coerce/coalesce/
* beach should not speak until after his morning coffee.
<beach> To elaborate, QUOTE creates a "literal object", and the consequences are undefined if literal objects are modified.
IAmRasputin has joined #commonlisp
<Josh_2> Makes sense
<Josh_2> Never thought I'd crash emacs using format of all things
<Josh_2> I am trying to iterate over a list, if the list item is nil then output a space, otherwise output the item
<aeth> did you generate a very long line or something?
<aeth> whatever emacs uses internally for text isn't good with long lines... I haven't gotten crashes, but I have had it hang which is basically like crashing it
<beach> GNU Emacs is not too bad. You should have seen Multics Emacs with long lines.
<Josh_2> I used ~#[ .. ] within a ~{ ~} and I guess it wasn't consuming the argument as it just kept outputting to stdout
Bike has quit [Quit: Lost terminal]
notzmv has quit [Ping timeout: 252 seconds]
<Josh_2> A lot harder than I thought it would be to conditionally display an element (format t "~{~:[ ~;~:*~A~]~^| ~}~%" row))
mister_m` has quit [Remote host closed the connection]
mister_m` has joined #commonlisp
<Josh_2> now if an element within ROW is non nil it is displayed, otherwise a space is displayed
Josh_2 has left #commonlisp [ERC (IRC client for Emacs 27.1)]
pillton has joined #commonlisp
char has quit [Ping timeout: 252 seconds]
froggey has quit [Ping timeout: 265 seconds]
froggey has joined #commonlisp
char has joined #commonlisp
karlosz has joined #commonlisp
Inline_ has quit [Quit: Leaving]
kpoeck has quit [Ping timeout: 246 seconds]
mister_m` has quit [Remote host closed the connection]
<susam> Good morning, everyone!
<beach> Hello susam.
<susam> Hello beach!
notzmv has joined #commonlisp
White_Flame has quit [Remote host closed the connection]
White_Flame has joined #commonlisp
<susam> Most of the time I realize that my erroneous code is running in an infinite loop only when the computer's fan goes berserk. I don't realize it in SLIME REPL because the REPL prompt always returns successfully without any output. Do you have another way to realize that your code is running in an infinite loop?
<susam> It takes a while to realize that no output + fan noise => infinite loop. It feels disorienting until that realization.
<beach> You must be running the code in a separate thread if you get the prompt back. The solution, then, is to run it in the same thread as the REPL.
<mfiano> I have stats for cpu and memory utilization visible at all times (on the bottom of my screen, and I'm trained to keep a constant eye on them)
amb007 has quit [Ping timeout: 258 seconds]
amb007 has joined #commonlisp
<susam> beach: I am not doing threads. For example, here is a simple test case to reproduce what I see. Type (loop) in a code buffer. Then C-c C-c to compile it. SLIME-REPL shows "; processing (LOOP)" with the "CL-USER>" prompt below it.
<mfiano> SLIME has both a repl thread and a compilation thread
<mfiano> (among others)
<susam> Now it isn't a new "CL-USER>" prompt. It is the old prompt itself pushed below the "; processing (LOOP)" line.
bpanthi977 has joined #commonlisp
<susam> So the visual feedback for infinite loop is indistinguishable from that due to correct code.
<susam> mfiano: Okay. Thanks for the tip. I will set up my environment to show CPU and memory usage too.
<pillton> susam: Does it happen with (loop (sleep 1) (print "here"))?
<mfiano> When you C-c C-c, it is compiled on a background thread with results sent to the repl thread.
<susam> pillton: It happens with your loop too but the "here" output gives a visual feedback that I am in an infinite loop, so no disorientation there. This is what the REPL looks like then: https://plaster.tymoon.eu/view/2543
<susam> mfiano: Thanks. That makes sense. So that is consistent with what beach said too. The code is compiled in a background thread.
<mfiano> This is important to realize, because if you have a continuous render/event loop or some such, you will need a thread-safe queue to process class redefinitions.
<mfiano> or any generic function redefinitions i suppose
<pillton> susam: I don't understand. C-c C-c compiles the "current toplevel form". It doesn't evaluate it.
amb007 has quit [Ping timeout: 252 seconds]
amb007 has joined #commonlisp
<pillton> susam: Oh wait it does.
<susam> pillton: What happens if you C-c C-c this in your Lisp buffer: (dotimes (n 10) (print n)). Does it not end up printing 0 1 2 ... 10 in your REPL?
<susam> pillton: Okay, we are on the same page then.
<pillton> I got confused by the documentation for C-c C-c.
<pillton> M-x slime-list-threads RET shows the threads that are running.
<pillton> If you see a "worker" thread then you know something is running.
Cymew has joined #commonlisp
<susam> pillton: Yes, that was a disconcerting for me too when I began learning CL with SLIME. But gradually got used to it. For example, C-c C-c is mapped to slime-compile-defun but it can compile any top-level form.
<susam> To be fair to the doc, it does spell it out clearly. "The code for the region is executed after compilation. In principle, the command writes the region to a file, compiles that file, and loads the resulting code."
frgo has quit [Ping timeout: 240 seconds]
<susam> pillton: Thanks for the slime-list-threads. Very useful.
<susam> I now realize I should ask more of these questions in this channel. Lot to learn. I have been coding like a caveman for so long.
<pillton> C-h k C-c C-c doesn't say anything about execution.
<pillton> C-h f slime-compile-defun RET is easier.
<susam> Interesting, it indeed does not. It probably should, otherwise the behaviour can be confusing. I quoted the documentation from here: https://common-lisp.net/project/slime/doc/html/Compilation.html
char has quit [Ping timeout: 272 seconds]
shka has joined #commonlisp
amb007 has quit [Ping timeout: 252 seconds]
amb007 has joined #commonlisp
dsk has joined #commonlisp
edgar-rft has quit [Ping timeout: 246 seconds]
scymtym has quit [Ping timeout: 272 seconds]
edgar-rft has joined #commonlisp
scymtym_ has joined #commonlisp
Colleen has quit [Read error: Connection reset by peer]
Colleen has joined #commonlisp
isekaijin has joined #commonlisp
notzmv has quit [Ping timeout: 258 seconds]
Lycurgus has joined #commonlisp
treflip has joined #commonlisp
scymtym has joined #commonlisp
scymtym_ has quit [Quit: ERC (IRC client for Emacs 28.0.50)]
attila_lendvai has joined #commonlisp
Lycurgus has quit [Quit: Exeunt]
amb007 has quit [Ping timeout: 272 seconds]
amb007 has joined #commonlisp
rgherdt has joined #commonlisp
makomo has joined #commonlisp
pve has joined #commonlisp
makomo has quit [Ping timeout: 258 seconds]
cjb has quit [Quit: rcirc on GNU Emacs 28.0.50]
pillton has quit [Quit: ERC (IRC client for Emacs 27.2)]
<sm2n> mfiano, do you have any examples of that (event loop class redefinitions with a threadsafe queue)?
<mfiano> That is pretty domain-specific code...I have a few private examples, but spread out across a large project, so not worth sharing
gioyik has quit [Quit: WeeChat 3.1]
makomo has joined #commonlisp
<sm2n> hmm alright, it was worth a shot
<sm2n> could you at least outline how it should work? I didn't know you could queue class redefinitions up
<sm2n> I'm assuming you specialize MAKE-INSTANCES-OBSOLETE?
<sm2n> (just looking through the spec)
<mfiano> Well the issue is, that there is a bit of implementation-specific behavior regarding when and how the generic accessors of a defclass should be recompiled, and since SLIME compiles on a dedicated compilation thread and not your application thread, there could be a slight instance in which the slots are non-existant, or no applicable methods exist. If you require live-redefining classes (or your
<mfiano> users do), a solution would be to write a macro that expands into a thunk which calls defclass, and call that function in your main thread as you pop items off of your locking queue.
attila_lendvai has quit [Read error: Connection reset by peer]
<mfiano> I do this in my game engine. At worst though, if you don't do any of this, you'll just be presented with the debugger for a single frame, in which you can hit the continue restart.
attila_lendvai has joined #commonlisp
<sm2n> ah, the thunk thing makes sense
<sm2n> thanks!
<sm2n> "When the class C is redefined, changes are propagated to its instances and to instances of any of its subclasses. Updating such an instance occurs at an implementation-dependent time, but no later than the next time a slot of that instance is read or written. "
<sm2n> from the spec seems to indicate you can't do it by messing with the internals
<mfiano> I think the underlying problem is that when you recompile a defclass, the methods for the generic function accessors are removed, and then re-added.
<mfiano> And this is not atomic
<sm2n> which makes sense, since otherwise classes would be inconsistent
<mfiano> I could be wrong though.
selwyn has joined #commonlisp
<mfiano> It's a rare bug to encounter, you'd have to be calling a slot accessor fast enough, or lucky enough to hit it at the exact moment during the redefinition between method removal and addition.
<mfiano> and when you do encounter it, it's non-fatal, as you can just issue the continue restart.
<mfiano> But annoying and common enough in a game engine that it was worth solving.
hendursaga has joined #commonlisp
hendursa1 has quit [Ping timeout: 244 seconds]
<sm2n> makes sense
frgo has joined #commonlisp
frgo has quit [Remote host closed the connection]
frgo has joined #commonlisp
frgo has quit [Remote host closed the connection]
frgo has joined #commonlisp
frgo has quit [Client Quit]
Lord_of_Life has quit [Ping timeout: 265 seconds]
Lord_of_Life has joined #commonlisp
<phadthai> multithreaded lisp largely chose what is protected by locks or not and it's also a performance tradeoff, I suspect the above is related and needs an explicit lock
<phadthai> although I only have minimal context from the above
<phadthai> and concurrency was not part of the standard; I think that the only fairly agreed thing is that dynamically scoped variables can be used as thread-specific contexts
manicennui has quit [Quit: Connection closed for inactivity]
kevingal has joined #commonlisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
derelict has quit [Ping timeout: 246 seconds]
amb007 has quit [Ping timeout: 272 seconds]
amb007 has joined #commonlisp
dsk has quit [Ping timeout: 252 seconds]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
dsk has joined #commonlisp
selwyn has quit [Read error: Connection reset by peer]
CrashTestDummy3 has joined #commonlisp
CrashTestDummy2 has quit [Ping timeout: 252 seconds]
bpanthi977 has quit [Ping timeout: 252 seconds]
selwyn has joined #commonlisp
lonzo has joined #commonlisp
CrashTestDummy2 has joined #commonlisp
CrashTestDummy3 has quit [Ping timeout: 268 seconds]
lonzo has quit [Quit: Leaving]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
tyson2 has joined #commonlisp
Alfr has joined #commonlisp
amb007 has quit [Ping timeout: 265 seconds]
amb007 has joined #commonlisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
kakuhen has quit [Quit: Leaving...]
CrashTestDummy has joined #commonlisp
CrashTestDummy2 has quit [Ping timeout: 265 seconds]
karlosz has quit [Quit: karlosz]
random-nick has joined #commonlisp
bpanthi977 has joined #commonlisp
Lycurgus has joined #commonlisp
tyson2 has quit [Remote host closed the connection]
kevingal has quit [Remote host closed the connection]
bpanthi977 has quit [Quit: bpanthi977]
bpanthi977 has joined #commonlisp
tyson2 has joined #commonlisp
rt has joined #commonlisp
robin has quit [Ping timeout: 240 seconds]
sander has quit [Quit: So long! :)]
sander has joined #commonlisp
attila_lendvai has quit [Read error: Connection reset by peer]
attila_lendvai has joined #commonlisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
attila_lendvai has quit [Read error: Connection reset by peer]
attila_lendvai has joined #commonlisp
isekaijin has quit [Quit: WeeChat 3.2]
dilated_dinosaur has quit [Ping timeout: 265 seconds]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
dilated_dinosaur has joined #commonlisp
luis has quit [Quit: The Lounge - https://thelounge.chat]
luis has joined #commonlisp
jason_m has quit [Remote host closed the connection]
Bike has joined #commonlisp
rt is now known as robin
<jmercouris> (defparameter xyz (lambda () (print "tomatoes are great")))
<jmercouris> (funcall xyz)
<jmercouris> (write-to-string xyz)
<jmercouris> obviously I cannot store XYZ like that
<jmercouris> is there a way to actually obtain `(lambda () (print "tomatoes are great"))` from xyz?
dsk has quit [Ping timeout: 256 seconds]
dsk has joined #commonlisp
yitzi has joined #commonlisp
<jmercouris> I'm pretty sure there is not
<jmercouris> and it is implementation specific, I just want to verify
<edgar-rft> there's FDEFINITION, but it's not guarantteed to return human-readable Lisp code
<pve> jmercouris: function-lambda-expression
<jmercouris> ah, function-lambda-expression, right
<jmercouris> b
<jmercouris> sorry, typo
prxq has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
<Bike> in general the source of a function still isn't going to be enough to serialize it, e.g. for closures
<jmercouris> 1
<jmercouris> yes
<pranavats> function-lambda-expression can return nil as well.
Lycurgus has quit [Quit: Exeunt]
<beach> Luckily. Or else we would not have any commercial Common Lisp vendors.
<polygon-op> being able to see the source code of the commercial system doesn't mean that it could be copied (that would depend on the license)
<polygon-op> wasn't a lot of genera source code navigable in the system?
<beach> Fair enough.
char has joined #commonlisp
<jmercouris> is there a way to see who has a reference to something preventing it from being GC'd?
<beach> That would be something very similar to a GC.
<jmercouris> we are having this problem: https://github.com/atlas-engineer/nyxt/pull/1606
<beach> If you track everything, you are pretty much preventing it from being garbage collected, unless you use weak references.
<Bike> i think sbcl has a thing for this, let me check
<jmercouris> beach: that is true
<Bike> sbcl.org is down again... man...
<polygon-op> alohomora
<jmercouris> hm, sourceforge right?
<jmercouris> yeah, it is down for me as well
<Bike> what the thing i'm recalling does is give you a path from roots to a given object. since the object you're looking for is already alive for some reason, you're not making it any more impossible to collect
<Bike> here we go, sb-ext:search-roots
<Bike> "Find roots keeping the targets of [a weak pointer] alive"
<Bike> sounds useful for finding leaks, but i've never used it myself
srhm has joined #commonlisp
lisp123 has joined #commonlisp
jeosol has quit [Ping timeout: 272 seconds]
<jmercouris> AHA!
<jmercouris> Thank you bicycle
<_death> (setf (gethash path *data-paths*) path) <- the hash table is weak only on keys.. if the value is path, then it defeats the purpose
yitzi has quit [Quit: Leaving]
ray has joined #commonlisp
MrVulcan has joined #commonlisp
kami_ has quit [Ping timeout: 252 seconds]
char has quit [Ping timeout: 272 seconds]
aeth has quit [Ping timeout: 246 seconds]
aeth has joined #commonlisp
yitzi has joined #commonlisp
lisp123 has quit [Remote host closed the connection]
bpanthi977 has quit [Ping timeout: 268 seconds]
lisp123 has joined #commonlisp
rogersm has joined #commonlisp
lisp123 has quit [Ping timeout: 252 seconds]
rogersm has quit [Quit: Leaving...]
derelict has joined #commonlisp
White_Flame has quit [Quit: No Ping reply in 180 seconds.]
White_Flame has joined #commonlisp
bpanthi977 has joined #commonlisp
srhm has quit [Ping timeout: 252 seconds]
selwyn has quit [Read error: Connection reset by peer]
srhm has joined #commonlisp
montxero has joined #commonlisp
ray has quit [Quit: WeeChat 3.2]
sp41 has joined #commonlisp
srhm has quit [Read error: Connection reset by peer]
ray has joined #commonlisp
srhm has joined #commonlisp
rgherdt has quit [Ping timeout: 252 seconds]
dsk has quit [Ping timeout: 252 seconds]
lisp123 has joined #commonlisp
manicennui has joined #commonlisp
Josh_2 has joined #commonlisp
MrVulcan has quit [Ping timeout: 252 seconds]
<Josh_2> Afternoon
jeosol has joined #commonlisp
<jmercouris> Good afternoon Josh the 2nd
selwyn has joined #commonlisp
lisp123 has quit [Ping timeout: 252 seconds]
gioyik has joined #commonlisp
cammie has joined #commonlisp
<Josh_2> Hey
Cymew has quit [Ping timeout: 252 seconds]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
Seok__ has quit [Ping timeout: 272 seconds]
seok has joined #commonlisp
cuz has joined #commonlisp
amb007 has quit [Ping timeout: 265 seconds]
amb007 has joined #commonlisp
cuz has quit [Remote host closed the connection]
cuz has joined #commonlisp
varjag has joined #commonlisp
Cymew has joined #commonlisp
seok- has joined #commonlisp
Cymew has quit [Ping timeout: 240 seconds]
amb007 has quit [Ping timeout: 240 seconds]
seok has quit [Ping timeout: 272 seconds]
amb007 has joined #commonlisp
JooTvora[m] has joined #commonlisp
cage has joined #commonlisp
seok- has quit [Read error: Connection reset by peer]
<dieggsy> is there a way to copy values from one existing array to another?
<dieggsy> like assigning all values of one array from another. short of looping
<Josh_2> copy-seq?
<_death> replace
<Bike> you can also use setf subseq, which is basically replace
<Josh_2> you could also use make-array with :initial-contents
<dieggsy> huh, replace works it seems. neat
<cammie> There's also map-into for when you need to apply some function too.
<cammie> Unless i'm mistaken, (replace s1 s2) is like (map-into s1 #'identity s2)
<Bike> that's roughly correct. might be some weirdness about fill pointers in some crap
<Bike> or some*
<Bike> and replace also lets you specify subsequences to work on
<cammie> And there may also be some weirdness when s1 is EQ to s2
<jcowan> Indeed, in mainframe days (when clanking iron dinosaurs ruled the Earth), most customers got source under NDA, because they expected to customize it.
amb007 has quit [Ping timeout: 255 seconds]
amb007 has joined #commonlisp
cuz has quit [Ping timeout: 255 seconds]
<Bike> replace behaves normally if the source and destination are the same sequence, though not if array displacement causes sharing
<Bike> with map-into it doesn't matter of course
<dieggsy> ah wait it looks like replace doesnt work for 2d arrays?
<Bike> yeah, it only works on sequences.
<dieggsy> hmm. is there a simple equivalent for 2d?
bpanthi977 has quit [Quit: bpanthi977]
<jcowan> surely CL has a proper array module in Quicklisp
<dieggsy> assuming standard though :)
attila_lendvai has quit [Ping timeout: 246 seconds]
<Bike> there's no general array copy in the standard, i don't think
<Bike> there are some array libraries, but i've never personally needed them, so i can't tell you much there
<aeth> most array libraries are going to be restricted to popular uses of arrays, such as FFI and/or graphics/lin-algebra
<aeth> specific is going to mean faster, but less general
mister_m` has joined #commonlisp
<jcowan> My first attempt to define an array library for Scheme (with arrays implemented on top of vectors, which are primitive) followed CL closely.
<_death> if it's a single row or so, you could use displaced arrays.. Lisp Machine Lisp also had conformal arrays
<jcowan> Then along came Brad Lucier, a *real* array user, who said "No, no, that's all wrong!" and designed a really compelling library, with things like read-only arrays, a bunch of composable affine transfomers (a long chain runs just as fast as a single transformerP, lazy mapping, etc. etc.
<jcowan> you can also provide an arbitrary getter (and optionally a setter) and get an array defined by them plus the shape, so it can do anything you want.
<dieggsy> jcowan heck yeah i love his array library, i posted it to chicken. unfortunately i haven't schemed in a couple months cause my job is taking all of my brain energy
<jcowan> dieggsy: "Never let your sense of morals prevent you from doing what is right!"
<dieggsy> not sure I follow heh
<Josh_2> Does the :type key in defclass mean that every time I set the value of that slot it gets type checked again?
treflip has quit [Quit: good night]
<shka> Josh_2: it is not guaranteed to be type checked at all!
<Josh_2> I was thinking that
<Josh_2> Pretty sure the type is just for the programmer
lisp123 has joined #commonlisp
<Josh_2> meh whatever
<shka> and for the compiler, at times
<shka> what i do is to set BEFORE method with check-type
ray has quit [Ping timeout: 265 seconds]
<shka> i am a broken record at this point... but check-type is your friend ;-)
ray has joined #commonlisp
<Josh_2> yes
lisp123 has quit [Ping timeout: 252 seconds]
cuz has joined #commonlisp
<Josh_2> Can I specialize no-applicable-method for a setf?
<Bike> sure.
<Bike> assuming you mean, for a generic function named (setf something)
notzmv has joined #commonlisp
<shka> but arguably, you should reconsider doing this
<shka> honestly, you can do almost anything in CLOS
<shka> does not mean that you should
cuz has quit [Ping timeout: 256 seconds]
<Josh_2> Bike: yes thats what I mean
cuz has joined #commonlisp
waleee has quit [Quit: WeeChat 3.2]
waleee has joined #commonlisp
montxero has quit [Quit: https://mibbit.com Online IRC Client]
dsk has joined #commonlisp
Nilby has quit [Ping timeout: 252 seconds]
ray has quit [Quit: WeeChat 3.2]
tyson2 has quit [Remote host closed the connection]
<Josh_2> Okay before I make an issue on github I was wondering if anyone could spot the problem I am having with postmodern
<Josh_2> here is my code https://plaster.tymoon.eu/view/2544#2544 basically when I run (find-user ...) in my repl I get a user returned, however when it is being called from a http request find-user is completely stalling, I tried pomo:query with the :dao key and it happens, but when I remove the :dao key I get a response
IPmonger has joined #commonlisp
IPmonger has quit [Remote host closed the connection]
<Josh_2> If I just use a toplevel connection with postmodern the call to (find-user ..) gets completely stuck and I have to restart my image
<Josh_2> but find-user works perfectly with the exact same arguments when called in my repl :(
<shka> i use postmodern exclusively with with-connection
<Josh_2> Yes (find-user.. ) works at the top level when I wrap it with a (pomo:with-connection ..)
<Josh_2> It works when I call authorize-login-page but it doesn't work when its called by Hunchentoot
<Josh_2> I will make an issue on github
tyson2 has joined #commonlisp
lisp123 has joined #commonlisp
akoana has joined #commonlisp
tyson2 has quit [Remote host closed the connection]
lisp123 has quit [Ping timeout: 252 seconds]
hineios3 has joined #commonlisp
derelict has quit [Quit: WeeChat 3.2]
hineios has quit [Ping timeout: 272 seconds]
hineios3 is now known as hineios
tophullyte has joined #commonlisp
mister_m` has quit [Remote host closed the connection]
makomo has quit [Quit: WeeChat 3.0.1]
cage has quit [Quit: rcirc on GNU Emacs 27.1]
yitzi has quit [Quit: Leaving]
kpoeck has joined #commonlisp
isekaijin has joined #commonlisp
shka has quit [Ping timeout: 272 seconds]
rgherdt has joined #commonlisp
tyson2 has joined #commonlisp
PinealGlandOptic has joined #commonlisp
IAmRasputin has quit [Ping timeout: 272 seconds]
dsk has quit [Ping timeout: 255 seconds]
derelict has joined #commonlisp
zephyr has quit [Read error: Connection reset by peer]
zephyr0 has joined #commonlisp
cuz has quit [Ping timeout: 246 seconds]
tophullyte has quit [Ping timeout: 240 seconds]
pve has quit [Quit: leaving]
rgherdt has quit [Ping timeout: 246 seconds]
varjag has quit [Quit: ERC (IRC client for Emacs 28.0.50)]
karlosz has joined #commonlisp
kakuhen has joined #commonlisp
zephyr0 is now known as zephyr
tyson2 has quit [Quit: ERC (IRC client for Emacs 27.2)]
defaultxr has joined #commonlisp
taiju has quit [Ping timeout: 240 seconds]
pillton has joined #commonlisp
taiju has joined #commonlisp
tyson2 has joined #commonlisp
yitzi has joined #commonlisp
karlosz has quit [Quit: karlosz]
amb007 has quit [Ping timeout: 240 seconds]
selwyn has quit [Read error: Connection reset by peer]
<defaultxr> hi, is there any way i can make slime/sly's M-. jump to a location for a symbol without actually defining a function or variable with that symbol as its name?
Alfr has quit [Killed (osmium.libera.chat (Nickname regained by services))]
Alfr has joined #commonlisp
<Xach> defaultxr: i believe there's a library to do something like that - to record a source location for a thing in a portable way
<Xach> hmm, don't remember a name though :(
<defaultxr> hmm, alright, thanks for the pointer, i'll see if i can find anything
igemnace has quit [Quit: WeeChat 3.2]
<pillton> defaultxr: An interesting request! What does the symbol represent?
<Xach> Hmmmmm
<etimmons> defaultxr: I think mgl-pax has some way of making slime do that. Could be misremembering, though.
<defaultxr> etimmons, mgl-pax does look promising, thanks
Alfr has quit [Quit: Leaving]
<defaultxr> pillton, usually they are just instances of classes. the instances can be optionally named and looked up by those names later, without polluting the normal symbol namespace of any packages. for example, one of my libraries is used to load audio files into buffers, and having the buffers referenced by the string of the filename means i can ensure that the user doesn't accidentally load 2 copies
<defaultxr> of the same file if they recompile the lisp file where the audio file is loaded in
<defaultxr> technically i don't need to have M-. working for the names of the class instances, but it would be nice
CrashTestDummy2 has joined #commonlisp
CrashTestDummy has quit [Ping timeout: 268 seconds]
cjb has joined #commonlisp