Xach changed the topic of #commonlisp to: Common Lisp, the #1=(programmable . #1#) programming language | Wiki: <https://www.cliki.net> | IRC Logs: <https://irclog.tymoon.eu/libera/%23commonlisp> | Cookbook: <https://lispcookbook.github.io/cl-cookbook>
Alfr has quit [Remote host closed the connection]
Alfr has joined #commonlisp
Alfr has quit [Remote host closed the connection]
Alfr has joined #commonlisp
mrcom_ has joined #commonlisp
robin has quit [Ping timeout: 244 seconds]
Lord_of_Life has quit [Ping timeout: 260 seconds]
robin has joined #commonlisp
Lord_of_Life has joined #commonlisp
mrcom has joined #commonlisp
jeko has quit [Ping timeout: 244 seconds]
molson__ has quit [Ping timeout: 245 seconds]
igemnace has quit [Remote host closed the connection]
jeko has joined #commonlisp
jeko has quit [Ping timeout: 264 seconds]
jeko has joined #commonlisp
nature has quit [Ping timeout: 258 seconds]
deck4rd has quit [Quit: see ya l8r]
dre_ has quit [Quit: Leaving]
jeko has quit [Ping timeout: 264 seconds]
jeko has joined #commonlisp
jeko_ has joined #commonlisp
Bike has quit [Quit: Connection closed]
jeko has quit [Ping timeout: 252 seconds]
jeko_ has quit [Ping timeout: 252 seconds]
mrcom_ has quit [Read error: Connection reset by peer]
mrcom has quit [Read error: Connection reset by peer]
igemnace has joined #commonlisp
Bike has joined #commonlisp
mrcom has joined #commonlisp
jeko has joined #commonlisp
waleee has quit [Ping timeout: 252 seconds]
akoana has quit [Quit: leaving]
<holycow> pururis
<holycow> argh, sorry about the noise
srhm has quit [Remote host closed the connection]
srhm has joined #commonlisp
Qwnavery has joined #commonlisp
Alfr has quit [Remote host closed the connection]
rogersm has quit [Read error: Connection reset by peer]
rogersm has joined #commonlisp
Guest-liao has quit [Quit: Client closed]
CptKirk has joined #commonlisp
contrapunctus has left #commonlisp [#commonlisp]
Guest-liao has joined #commonlisp
mrcom_ has joined #commonlisp
srhm has quit [Remote host closed the connection]
srhm has joined #commonlisp
Alfr has joined #commonlisp
Alfr has quit [Remote host closed the connection]
srhm has quit [Read error: Connection reset by peer]
srhm has joined #commonlisp
varjag has joined #commonlisp
mrcom has quit [Read error: Connection reset by peer]
Bike has quit [Quit: Connection closed]
srhm has quit [Read error: Connection reset by peer]
srhm has joined #commonlisp
varjag has quit [Ping timeout: 264 seconds]
Catie has quit [Remote host closed the connection]
Alfr has joined #commonlisp
<beach> Good morning everyone!
Alfr has quit [Remote host closed the connection]
Alfr has joined #commonlisp
Alfr has quit [Remote host closed the connection]
Alfr has joined #commonlisp
johnjay has quit [Read error: Connection reset by peer]
johnjay has joined #commonlisp
mrcom_ has quit [Read error: Connection reset by peer]
Bike has joined #commonlisp
dre has joined #commonlisp
jeko has quit [Ping timeout: 252 seconds]
jeko has joined #commonlisp
tyson2 has quit [Remote host closed the connection]
jeko has quit [Ping timeout: 258 seconds]
semz has quit [Ping timeout: 258 seconds]
LoopMacro_ has joined #commonlisp
dre_ has joined #commonlisp
dre has quit [Ping timeout: 258 seconds]
jealousmonk has quit [Quit: ERC (IRC client for Emacs 27.1)]
Bike has quit [Quit: Connection closed]
semz has joined #commonlisp
CptKirk has quit [Ping timeout: 256 seconds]
srhm has quit [Read error: Connection reset by peer]
srhm has joined #commonlisp
jeko has joined #commonlisp
cjb has quit []
ym has joined #commonlisp
jeko has quit [Ping timeout: 244 seconds]
mrcom has joined #commonlisp
mrcom_ has joined #commonlisp
CrashTestDummy3 has joined #commonlisp
CrashTestDummy2 has quit [Ping timeout: 244 seconds]
jeko has joined #commonlisp
peterhil has quit [Ping timeout: 260 seconds]
pillton has joined #commonlisp
aartaka has joined #commonlisp
jeko has quit [Ping timeout: 265 seconds]
rudi has quit [*.net *.split]
alphapapa[m] has quit [*.net *.split]
dieggsy has quit [*.net *.split]
sp has quit [*.net *.split]
MatrixTravelerbo has quit [*.net *.split]
micro_ has quit [*.net *.split]
dino__ has quit [*.net *.split]
mason has quit [*.net *.split]
dac has quit [*.net *.split]
danieli has quit [*.net *.split]
terrorjack has quit [*.net *.split]
spacebat2 has quit [*.net *.split]
easye has quit [*.net *.split]
madnificent has quit [*.net *.split]
jgkamat has quit [*.net *.split]
pranavats has quit [*.net *.split]
micro has joined #commonlisp
mason has joined #commonlisp
dino__ has joined #commonlisp
danieli has joined #commonlisp
spacebat2 has joined #commonlisp
madnificent has joined #commonlisp
terrorjack has joined #commonlisp
dcx has joined #commonlisp
alphapapa[m] has joined #commonlisp
jgkamat has joined #commonlisp
dieggsy has joined #commonlisp
sp has joined #commonlisp
MatrixTravelerbo has joined #commonlisp
rudi has joined #commonlisp
Guest-liao has quit [Quit: Client closed]
Guest-liao has joined #commonlisp
<Qwnavery> rip netsplit
holycow has quit [Quit: Lost terminal]
ym has quit [Ping timeout: 264 seconds]
shka has joined #commonlisp
MichaelRaskin has quit [Quit: MichaelRaskin]
Cymew has joined #commonlisp
peterhil has joined #commonlisp
Guest-liao has quit [Quit: Client closed]
Oladon has quit [Quit: Leaving.]
easye has joined #commonlisp
Guest-liao has joined #commonlisp
Qwnavery has quit [Quit: WeeChat 3.3]
spiaggia has joined #commonlisp
makomo has joined #commonlisp
shka has quit [Ping timeout: 265 seconds]
makomo has quit [Ping timeout: 260 seconds]
dre_ has quit [Quit: Leaving]
contrapunctus has joined #commonlisp
rogersm has quit [Quit: Leaving...]
aartaka has quit [Ping timeout: 264 seconds]
aartaka has joined #commonlisp
edgar-rft has quit [Quit: Leaving]
gaqwas has joined #commonlisp
john__ has joined #commonlisp
pillton has quit [Quit: ERC (IRC client for Emacs 27.2)]
pve has joined #commonlisp
spiaggia has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
makomo has joined #commonlisp
random-nick has joined #commonlisp
attila_lendvai has joined #commonlisp
mrcom has quit [Read error: Connection reset by peer]
mrcom_ has quit [Read error: Connection reset by peer]
mrcom_ has joined #commonlisp
mrcom has joined #commonlisp
gaqwas has quit [Ping timeout: 260 seconds]
john__ has quit [Ping timeout: 260 seconds]
aeth has quit [Ping timeout: 265 seconds]
hendursaga has joined #commonlisp
aeth has joined #commonlisp
hendursa1 has quit [Ping timeout: 276 seconds]
mrcom_ has quit [Read error: Connection reset by peer]
mrcom has quit [Read error: Connection reset by peer]
Nilby has quit [Ping timeout: 260 seconds]
mrcom_ has joined #commonlisp
mrcom has joined #commonlisp
mrcom has quit [Read error: Connection reset by peer]
Guest-liao has quit [Quit: Client closed]
OlCe has quit [Ping timeout: 245 seconds]
mrcom has joined #commonlisp
vats has quit [Ping timeout: 244 seconds]
vats has joined #commonlisp
rotateq has joined #commonlisp
cosimone has joined #commonlisp
cranium has joined #commonlisp
srhm has quit [Read error: Connection reset by peer]
srhm has joined #commonlisp
Krystof has joined #commonlisp
vats has quit [Ping timeout: 260 seconds]
igemnace has quit [Quit: WeeChat 3.3]
Guest54 has joined #commonlisp
Guest54 has quit [Client Quit]
Guest-liao has joined #commonlisp
dec0d3r has quit [Remote host closed the connection]
Guest-liao has quit [Ping timeout: 256 seconds]
mrcom has quit [Read error: Connection reset by peer]
mrcom has joined #commonlisp
scymtym has joined #commonlisp
skn2 is now known as skn
mrcom has quit [Read error: Connection reset by peer]
mrcom_ has quit [Read error: Connection reset by peer]
Guest-liao has joined #commonlisp
mrcom_ has joined #commonlisp
mrcom has joined #commonlisp
vats has joined #commonlisp
vats has quit [Ping timeout: 260 seconds]
vats has joined #commonlisp
vats has quit [Ping timeout: 244 seconds]
vats has joined #commonlisp
seere has quit [Ping timeout: 260 seconds]
vats has quit [Ping timeout: 244 seconds]
vats has joined #commonlisp
vats has quit [Ping timeout: 244 seconds]
vats has joined #commonlisp
igemnace has joined #commonlisp
vats has quit [Ping timeout: 260 seconds]
vats has joined #commonlisp
vats has quit [Ping timeout: 260 seconds]
vats has joined #commonlisp
<mfiano> Congrats to everyone that participated. This Autumn Lisp Game Jam set a new record for participant and submission counts, 71 and 18 respectively. For the next 2 days voting is open to the public to show your support.
vats has quit [Ping timeout: 260 seconds]
vats has joined #commonlisp
<jackdaniel> link! give us a link :)
<flip214> lmgtfy
<jackdaniel> thank you
<flip214> you're welcome!
<jackdaniel> mfiano: you may change some descriptions freenode->libera
<jackdaniel> (at least one I can spot :)
tyson2 has joined #commonlisp
makomo has quit [Ping timeout: 244 seconds]
<mfiano> jackdaniel: I can't locate it with C-f
<mfiano> Are you sure your cache is invalidated?
<jackdaniel> mfiano: now I see Libera, so it must have been cache indeed
<jackdaniel> sorry for the noise
<mfiano> No problem
<mfiano> Also I should mention that I didn't get to review any yet, but I'm sure I saw at least a few CL entries, so not entirely off-topic :)
<mfiano> Enjoy, and don't let the boss see you trying them on yet another slow-moving Monday ;)
<flip214> mfiano: any chance to get the develop branch of Virality Engine into QL? (with all dependencies?)
<mfiano> flip214: Not a chance any time soon. The other developer needed a long break, probably for the rest of the year, and its dependencies diverged too much to be able to build it. The project is basically on hold and un-usable until we are both back working on it.
<mfiano> You can stop by #bufferswap and ping psilord to ask when he plans on coming back :)
<flip214> hmmm, I really would like to try some game environment where I can (defparameter *player* (make-instance ...)) and then play around in the REPL
<flip214> mfiano: no, I'd rather not be the reason for more stress.
<mfiano> :)
<mfiano> I have a few engines that meet that criteria, but I too have been on a gamedev break for a few months, and I have no idea how well they compile right now, and there is zero documentation.
<mfiano> Your best bet is probably CEPL for that type of exploratory programming though.
vats has quit [Ping timeout: 260 seconds]
<flip214> mfiano: thanks, will take a look
vats has joined #commonlisp
<flip214> the example I'm looking at uses (v! ...), but that is not defined -- seems that (ql:quickload :cepl) doesn't pull all dependencies??
nature has joined #commonlisp
<mfiano> You might want to look at the example system's dependencies
<flip214> yeah...
<flip214> hoped for a single-file-load-and-play, but there's quite a lot of dependencies and packages here
<mfiano> That is expected. game engines are complex pieces of machinery
scymtym_ has joined #commonlisp
<flip214> well, I literally asked for a (defparameter ...) all-you-can-play library ;[
<flip214> thanks!
scymtym has quit [Ping timeout: 260 seconds]
pranavats has joined #commonlisp
<mfiano> That is exactly what CEPL is. Maybe you are just under-estimating the groundwork required for that level of abstraction.
makomo has joined #commonlisp
Krystof has quit [Ping timeout: 244 seconds]
patrice has joined #commonlisp
jealousmonk has joined #commonlisp
aeth has quit [Ping timeout: 265 seconds]
aeth has joined #commonlisp
scymtym_ has quit [Remote host closed the connection]
Bike has joined #commonlisp
scymtym has joined #commonlisp
X-Scale` has joined #commonlisp
X-Scale has quit [Ping timeout: 264 seconds]
X-Scale` is now known as X-Scale
<greyrat> Is there a way to get other key arguments and forward them to another function? Sth ala
<greyrat> (defun repo-new (&key (tags nil) &rest args)
<greyrat> (apply #'make-instance 'repo :tags tags args))
<beach> Sure, but you need to put the &rest before &key.
<greyrat> beach: Do i also need =&allow-other-keys=?
<Bike> that depends on whether you want to allow other keys
<Colleen> Bike: drmeister said 8 hours, 5 minutes ago: I got the multiple entry points somewhat working. A "local" and a "xep" function are being generated. I'll need some help tomorrow to set up the argument handling for the lcl function and for the xep function(s).
<Colleen> Bike: drmeister said 8 hours, 7 minutes ago:
<Bike> oops
<Bike> if you do it without allow-other-keys than you can call (repo-new :tags whatever) fine, but other keys will cause an error, same as usual
<beach> greyrat: Common Lisp allows for multiple occurrences of an argument keyword in a list of arguments, so you just need to put the overriding ones first.
<beach> greyrat: As Bike says, it is independent of &allow-other-keys.
<greyrat> beach: I get an error that =&key= is getting an odd number of args: https://paste.gnugen.ch/paste/4HN3
<Bike> right, because you did that
<Bike> if you want to include required or optional args you need to specify those as well
vats has quit [Ping timeout: 265 seconds]
vats has joined #commonlisp
<beach> greyrat: As Bike says, all your parameters are keyword parameters, but then when you call the function, you pass one first argument that is not a keyword argument.
<beach> greyrat: The existence of &rest does not change what arguments the function can accept. That's entirely defined by the required parameters, the optional parameters, and the keyword parameters.
rotateq has quit [Remote host closed the connection]
tyson2 has quit [Remote host closed the connection]
<greyrat> I am having a weird problem that trying to `(inspect (make-instance 'repo))` is asking me for input 😅
makomo has quit [Ping timeout: 260 seconds]
<Bike> that's what inspect does. it's interactive.
<Bike> if you want the non-interactive information dump, use describe.
<greyrat> Oh. I saw `(inspect some-var` in https://lispcookbook.github.io/cl-cookbook/clos.html.
<beach> greyrat: Could you please acknowledge that you understood the previous remarks, or that on the contrary, you didn't understand them?
<greyrat> beach: I kind of understood them.
<greyrat> Trying to verify, using `inspect` or `describe` or whatever.
<beach> The function?
<greyrat> Okay. =(&rest args &key (tags nil) &allow-other-keys)= seems to do what I want, as the first occurence of a keyword arg overrides the later ones. But is there a way to extract the keyword arguments from =args=, such that only unused arguments remain in =args=?
<Bike> if you do &rest and &key, all of the rest arguments are keyword arguments as well.
<beach> greyrat: Why do you want to extract them?
<beach> They are harmless.
<beach> greyrat: If you want to do that, you need to do it MANUALLY, using REMF for instance.
<beach> clhs remf
<mfiano> greyrat: Note that "(tags nil)" can be simplified to simply "tags" if you do not need to suppliedp variable which seems to be the case.
vats has quit [Remote host closed the connection]
<greyrat> beach: It's useful if the wrapper functions accepts some keyword args that the wrapped function does not accept at all.
<jackdaniel> greyrat: common lisp has a macro with-keywords-removed
<jackdaniel> s/common lisp/mcclim/
<beach> clhs :allow-other-keys
<jackdaniel> sorry
<specbot> Couldn't find anything for :allow-other-keys.
<greyrat> mfiano: So all =&key= args are always optional?
<beach> Hmm.
<beach> greyrat: You can call the wrapped functions with :ALLOW-OTHER-KEYS T.
<mfiano> Keywords are not positional, and are optional.
<greyrat> This =with-keywords-removed=, is it in any external libraries?
<jdz> Alexandria.
<greyrat> beach: Wouldn't that force me to modify the wrapped function, and reduce safety in general?
<beach> greyrat: No, it's all in the caller, like I said.
<beach> Notice that I didn't say to modify the caller to use &allow-other-keys.
<jdz> greyrat: alexandria:remove-from-plist.
<beach> Er, to modify the callee.
<beach> I said to modify the callER to pass :ALLOW-OTHER-KEYS T.
<beach> No change to the callee.
casionaut has joined #commonlisp
<mfiano> allowing other keys can be specified in the call's arguments or callee's lambda list.
waleee has joined #commonlisp
<greyrat> beach: So it would be =(wrapped-fn ... :ALLOW-OTHER-KEYS t)=, correct? CL has so many features :))
<beach> Yes.
<greyrat> Thanks. I'll try these out.
<beach> Or with APPLY in general.
<mfiano> Why do you annotate your forms on IRC with #\= ?
<jackdaniel> unless it is obviously correct, I'd remove unwanted keywords from the property list. you may accidently pass a matching keyword argument to the callee
<beach> jackdaniel: But doing that would require consing.
<jackdaniel> delete-from-plist manipulates the original list. that said my point is that if both the caller and the callee accept a keyword :name with a different meaning then you could introduce a bug
<jackdaniel> because it is a seldom situation I've added "unless it is obviously correct"
<mfiano> jackdaniel: That is up to the implementation. It may also cons.
<jackdaniel> as I said, that's beside the point. unlessy ou say that when you consider consing vs introducing a bug it is a dillema
<jackdaniel> s/unlessy/unless y/
aartaka has quit [Ping timeout: 244 seconds]
<paulapatience> mfiano: Probably org mode's =verbatim= syntax.
<jackdaniel> s/it is a/being a/
aartaka has joined #commonlisp
<mfiano> My correction to your "manipulates the original list" statement, was besides the point to :)
<mfiano> (the other point, that is)
<mfiano> s/to/too/
<Alfr> Not sure remf is a good idea ... What if someone writes (apply 'foo '(42 :bar 21 :baz pi)) ?
tyson2 has joined #commonlisp
<greyrat> mfiano: IRC has no native markup, so I use org-mode's =. This way I can easily copy-paste IRC snippets into my org-mode files.
pjb has quit [Read error: Connection reset by peer]
<greyrat> Force of habit sometimes makes me use markdown's =`=, too.
<jackdaniel> Alfr: good point
<jackdaniel> excerpt from apply: "Because a function can neither detect whether it was called via apply nor whether (if so) the last argument to apply was a constant, conforming programs must neither rely on the list structure of a rest list to be freshly consed, nor modify that list structure. "
cranium has quit [Quit: Leaving]
ec_ has quit [Ping timeout: 276 seconds]
tyson2 has quit [Remote host closed the connection]
edgar-rft has joined #commonlisp
aartaka has quit [Ping timeout: 245 seconds]
aartaka has joined #commonlisp
makomo has joined #commonlisp
tyson2 has joined #commonlisp
casionaut has quit [Remote host closed the connection]
Guest-liao has quit [Quit: Client closed]
<CodeBitCookie[m]> Hello Everyone!
<beach> Hello CodeBitCookie[m].
<CodeBitCookie[m]> I was working with strings and knew about cl-str. I didn't know there was also a cl-string. Can anyone point out the differences or why aynone would choose one over the other in some cases? Thanks.
CptKirk has joined #commonlisp
edgar-rft has quit [Quit: Leaving]
shka has joined #commonlisp
CptKirk has quit [Client Quit]
tyson2 has quit [Remote host closed the connection]
<jcowan> clhs allow-other-keys
<specbot> Couldn't find anything for allow-other-keys.
<jcowan> pfft
<jackdaniel> clhs &allow-other-keys
<jcowan> ahhh
<CodeBitCookie[m]> I mean, I think it doesn't matter, I will just choose the most documented one which looks good to me, cl-str.
ym has joined #commonlisp
X-Scale` has joined #commonlisp
X-Scale has quit [Ping timeout: 260 seconds]
X-Scale` is now known as X-Scale
vats has joined #commonlisp
cage has joined #commonlisp
tyson2 has joined #commonlisp
vats has quit [Ping timeout: 260 seconds]
vats has joined #commonlisp
gxt_ has quit [Remote host closed the connection]
gxt_ has joined #commonlisp
Oladon has joined #commonlisp
makomo has quit [Ping timeout: 265 seconds]
Catie has joined #commonlisp
OlCe has joined #commonlisp
rogersm has joined #commonlisp
rogersm has quit [Client Quit]
rogersm has joined #commonlisp
aleamb has quit [Quit: bye]
gxt_ has quit [Remote host closed the connection]
gxt_ has joined #commonlisp
waleee has quit [Ping timeout: 245 seconds]
waleee has joined #commonlisp
Cymew has quit [Ping timeout: 244 seconds]
tyson2 has quit [Remote host closed the connection]
hendursaga has quit [Quit: hendursaga]
hendursaga has joined #commonlisp
casionaut has joined #commonlisp
Oladon has quit [Quit: Leaving.]
tyson2 has joined #commonlisp
hendursaga has quit [Remote host closed the connection]
hendursaga has joined #commonlisp
Oladon has joined #commonlisp
<Shinmera> My talk at GIC about using Lisp for gamedev is now watchable on twitch vods: https://courier.tymoon.eu/view/Epj2e5+dddAlACr5wK854053PT0=
<Shinmera> (the mail mentions some other stuff as well, which may or may not be of interest :) )
casionaut has quit [Remote host closed the connection]
srhm has quit [Read error: Connection reset by peer]
srhm has joined #commonlisp
varjag has joined #commonlisp
akoana has joined #commonlisp
shka has quit [Ping timeout: 265 seconds]
Mandus has quit [Ping timeout: 244 seconds]
Inline has quit [Read error: Connection reset by peer]
Mandus has joined #commonlisp
Psybur has joined #commonlisp
<jmercouris> so I've got (first (sort xyz #'some-predicate)))
john__ has joined #commonlisp
gaqwas has joined #commonlisp
<jmercouris> is there a more succinct way to write this? like (most-predicate xyz #'some-predicate)
<jmercouris> ?
<jmercouris> also the first example should obviously read (first (sort xyz #'some-predicate))
<jmercouris> maybe there is some function I'm not thinking of or seeing in the standard
<Bike> alexandria:extremum, i think
<Bike> "Returns the element of SEQUENCE that would appear first if the subsequence bounded by START and END was sorted using PREDICATE and KEY."
<jmercouris> aha, perfect
<jmercouris> thank you bike
<jmercouris> I had a strong feeling there was something for this
<Bike> you are welcome
<jmercouris> what is extremum mean? I've never heard this word
<jmercouris> oh wow, it's a real word
<jmercouris> "A value in the domain of a given function at which the function attains a maximum or minimum value."
<Bike> i imagine it is only rarely heard outside of math departments
tfeb has joined #commonlisp
tyson2 has quit [Remote host closed the connection]
Josh_2 has joined #commonlisp
cage has quit [Quit: rcirc on GNU Emacs 27.1]
<Josh_2> hi hi
<Josh_2> I am trying to define my own method combination but I always get the error "method:
<Josh_2> is applicable, but does not belong to any method group"
<Josh_2> This is when copying the examples from CLHS
<Bike> you mean you're using one of the examples without changes? which one?
<Josh_2> I was just trying to or one, but with a different name
<Josh_2> trying the or one*
<Josh_2> I'm trying to make a method combination that returns a string
<Josh_2> by concatenating the results of all of the method calls together, something like that
<Bike> oh, if you want to do that you shouldn't need to do anything complicated
<Bike> just do (defun strcat (&rest strings) (apply #'concatenate 'string strings)) and then use the short form define-method-combination
<Josh_2> Well I'd like to understand how its working in case I want to define something more complicated
aartaka has quit [Ping timeout: 260 seconds]
<Josh_2> How do I get rid of the condition I mentioned above?
<Bike> i just tried the OR example and didn't see any problem
<Josh_2> hmm
<Bike> did you define your method with an OR qualifier?
<Josh_2> maybe I broke something then
<Josh_2> I did
<Josh_2> I called it or2 tho
<Bike> what's your code look like?
<tfeb> Did you then define the gf with the or2 method combination?
<Josh_2> I got it
Inline has joined #commonlisp
<Josh_2> tfeb: I did not and that was the problem
<tfeb> Oh, good
<tfeb> (I mean: goid you solved it)
srhm has quit [Read error: Connection reset by peer]
srhm has joined #commonlisp
tyson2 has joined #commonlisp
<Josh_2> Now I had my little bit of fun I might actually use this little combination for generating urls for requests
<Josh_2> I had a thought the other day, has anyone in here used anonymous classes/methods for anything?
nature has quit [Ping timeout: 260 seconds]
<Josh_2> I say I had a thought, the thought was that question xD
tfeb has quit [Quit: died]
patrice has quit [Quit: Leaving]
igemnace has quit [Ping timeout: 260 seconds]
amb007 has quit [Ping timeout: 264 seconds]
amb007 has joined #commonlisp
saltrocklamp[m] has quit [Changing host]
saltrocklamp[m] has joined #commonlisp
edgar-rft has joined #commonlisp
Oladon has quit [Quit: Leaving.]
pve has quit [Quit: leaving]
hendursaga has quit [Remote host closed the connection]
hendursaga has joined #commonlisp
Inline has quit [Remote host closed the connection]
dra has joined #commonlisp
Inline has joined #commonlisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
attila_lendvai has quit [Ping timeout: 260 seconds]
Oladon has joined #commonlisp
dra has quit [Quit: Leaving]
cjb has joined #commonlisp
Guest93 has joined #commonlisp
pillton has joined #commonlisp
euandreh has quit [Ping timeout: 260 seconds]
Guest93 has quit [Quit: Client closed]
dec0d3r has joined #commonlisp
tyson2` has joined #commonlisp
CrashTestDummy has joined #commonlisp
tyson2` has quit [Remote host closed the connection]
CrashTestDummy3 has quit [Ping timeout: 244 seconds]
tyson2 has quit [Ping timeout: 244 seconds]
tyson2 has joined #commonlisp
varjag has quit [Ping timeout: 260 seconds]
cosimone has quit [Remote host closed the connection]
<mfiano> Sure. Anonymous classes are useful for implementing mixin systems
<mfiano> I think dynamic-mixins uses this approach. stealth-mixin is a bit different and does not.
euandreh has joined #commonlisp
<hayley> Stealth mixins are all "static", i.e. for some victim class C and some mixin M, all instances of C are instances of M.
<mfiano> Right
<mfiano> dynamic mixins is more like "create this anonymous class" and dynamically at runtime add/remove mixins to its superclasses
<mfiano> "
<mfiano> ugh i cant balance quotes without emacs
<mfiano> I personally don't like dynamic-mixins because it assumes a hard-coded precedence ordering of mixins, which means for progn method combination you have to change the specificity for it to make sense (in my uses anyway), and in some cases I wanted a reversed CPL for some instances and not for others. I don't think it should enforce this design choice.
<mfiano> The commit history shows it was swapped some time ago for "reasons"
<mfiano> One day I would like to develop a useful (to me) mixin system for CL. There are some problems that have to be solved, such as initarg collisions.
<mfiano> The obvious choice would be to use non-keyword interned initargs, but presenting this to the user would be "fun".
l994 has joined #commonlisp
gaqwas has quit [Ping timeout: 244 seconds]
john__ has quit [Ping timeout: 244 seconds]
pjb has joined #commonlisp
azimut has quit [Remote host closed the connection]
azimut has joined #commonlisp
euandreh has quit [Ping timeout: 260 seconds]
random-nick has quit [Ping timeout: 244 seconds]
Psybur has quit [Remote host closed the connection]
jeko has joined #commonlisp
jeko has quit [Remote host closed the connection]
jeko has joined #commonlisp
igemnace has joined #commonlisp
etiago has quit [Ping timeout: 260 seconds]
euandreh has joined #commonlisp
ym has quit [Ping timeout: 260 seconds]
tyson2 has quit [Remote host closed the connection]
l994 has quit [Quit: Client closed]