jackdaniel 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> | Pastebin: <https://plaster.tymoon.eu/> | News: ELS'22 this Monday (2022-03-21), see https://european-lisp-symposium.org
triffid has quit [Remote host closed the connection]
triffid has joined #commonlisp
azimut has quit [Ping timeout: 240 seconds]
azimut has joined #commonlisp
igemnace has joined #commonlisp
<Nilby> Is there some reason that loop doesn't do full destructuring, e.g. &rest, aside from historical compatibility?
eddof13 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
zacque has joined #commonlisp
eddof13 has joined #commonlisp
rawley_ has joined #commonlisp
yauhsien has joined #commonlisp
Bike has quit [Quit: Lost terminal]
yauhsien has quit [Ping timeout: 260 seconds]
s-liao has joined #commonlisp
Inline__ has joined #commonlisp
Inline has quit [Ping timeout: 260 seconds]
unixlisp has joined #commonlisp
aeth has quit [Ping timeout: 246 seconds]
aeth has joined #commonlisp
<unixlisp> hayley: (array-performance:run-benchmark 100) for float sequenced iteration, the performance of adjustable vector is worst.  ref: https://github.com/svetlyak40wt/array-performance
<hayley> Thanks, I guess.
<unixlisp> we really need many benchmark.
akoana has quit [Quit: leaving]
yosef` has joined #commonlisp
<beach> Good morning everyone!
unixlisp has left #commonlisp [#commonlisp]
asarch has joined #commonlisp
s-liao has quit [Ping timeout: 250 seconds]
semz_ has joined #commonlisp
semz has quit [Ping timeout: 260 seconds]
s-liao has joined #commonlisp
asarch has quit [Quit: Leaving]
waleee has quit [Ping timeout: 260 seconds]
yosef` has quit [Quit: yosef`]
poselyqualityles has joined #commonlisp
yosef` has joined #commonlisp
yauhsien has joined #commonlisp
poselyqualityles has quit [Ping timeout: 272 seconds]
eddof13 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
tyson2 has quit [Remote host closed the connection]
s-liao has quit [Quit: Ping timeout (120 seconds)]
rawley_ has quit [Remote host closed the connection]
rawley has quit [Remote host closed the connection]
yosef` has quit [Quit: ERC (IRC client for Emacs 28.0.50)]
s-liao has joined #commonlisp
yosef` has joined #commonlisp
jgart has quit [Ping timeout: 260 seconds]
jgart has joined #commonlisp
semz_ is now known as semz
s-liao has quit [Ping timeout: 250 seconds]
Inline__ has quit [Ping timeout: 260 seconds]
ebrasca has quit [Remote host closed the connection]
yauhsien has quit [Remote host closed the connection]
yauhsien has joined #commonlisp
spiaggia has joined #commonlisp
yauhsien has quit [Ping timeout: 272 seconds]
yauhsien has joined #commonlisp
Cymew has joined #commonlisp
nubi has joined #commonlisp
attila_lendvai has joined #commonlisp
frgo has quit [Ping timeout: 260 seconds]
yauhsien has quit [Remote host closed the connection]
yauhsien has joined #commonlisp
Volt_ has quit [Quit: ]
pok has quit [Ping timeout: 250 seconds]
pok has joined #commonlisp
pok has quit [Changing host]
pok has joined #commonlisp
yauhsien has quit [Ping timeout: 272 seconds]
nubi has quit [Quit: ERC (IRC client for Emacs 27.2)]
saturn2 has quit [*.net *.split]
prokhor__ has quit [*.net *.split]
theBlackDragon has quit [*.net *.split]
Fade has quit [*.net *.split]
sukaeto has quit [*.net *.split]
mgxm has quit [*.net *.split]
Common-Lisp has quit [*.net *.split]
okflo has quit [*.net *.split]
opcode has quit [*.net *.split]
alanz has quit [*.net *.split]
snits has quit [*.net *.split]
antoszka has quit [*.net *.split]
borodust has quit [*.net *.split]
phadthai has quit [*.net *.split]
Fade has joined #commonlisp
phadthai has joined #commonlisp
sukaeto has joined #commonlisp
prokhor__ has joined #commonlisp
alanz has joined #commonlisp
okflo has joined #commonlisp
opcode has joined #commonlisp
snits has joined #commonlisp
antoszka has joined #commonlisp
mgxm has joined #commonlisp
saturn2 has joined #commonlisp
borodust has joined #commonlisp
fitzsim has quit [*.net *.split]
MetaYan has quit [*.net *.split]
remexre has quit [*.net *.split]
conjunctive has quit [*.net *.split]
dale has quit [*.net *.split]
jaimelm has quit [*.net *.split]
samebchase has quit [*.net *.split]
madnificent has quit [*.net *.split]
dale has joined #commonlisp
MetaYan has joined #commonlisp
conjunctive has joined #commonlisp
remexre has joined #commonlisp
jaimelm has joined #commonlisp
madnificent has joined #commonlisp
poselyqualityles has joined #commonlisp
azimut has quit [Remote host closed the connection]
gxt has quit [Remote host closed the connection]
azimut has joined #commonlisp
gxt has joined #commonlisp
poselyqualityles has quit [Ping timeout: 246 seconds]
<pjb> hayley: you're right, indeed. Since the values are accumulated on the stack as parameter for the VALUES function.
<pjb> So we need only one multiple value register per thread.
spiaggia has quit [Quit: ERC (IRC client for Emacs 26.3)]
yauhsien has joined #commonlisp
shka has joined #commonlisp
poselyqualityles has joined #commonlisp
igemnace has quit [Quit: WeeChat 3.5]
karlosz has joined #commonlisp
occ has quit [Ping timeout: 272 seconds]
karlosz has quit [Quit: karlosz]
poselyqualityles has quit [Ping timeout: 256 seconds]
micro has quit [Ping timeout: 256 seconds]
igemnace has joined #commonlisp
OlCe has quit [Remote host closed the connection]
occ has joined #commonlisp
rotateq has joined #commonlisp
MajorBiscuit has joined #commonlisp
notzmv has quit [Ping timeout: 260 seconds]
livoreno has quit [Ping timeout: 260 seconds]
random-nick has joined #commonlisp
s-liao has joined #commonlisp
aartaka has joined #commonlisp
aartaka has quit [Ping timeout: 260 seconds]
OlCe has joined #commonlisp
aartaka has joined #commonlisp
asarch has joined #commonlisp
livoreno has joined #commonlisp
s-liao63 has joined #commonlisp
s-liao96 has joined #commonlisp
s-liao has quit [Ping timeout: 250 seconds]
s-liao63 has quit [Ping timeout: 250 seconds]
lisp123 has joined #commonlisp
<lisp123> lisptips.com is one of my favourite websites
asarch has quit [Quit: Leaving]
theBlackDragon has joined #commonlisp
Oddity has quit [Ping timeout: 272 seconds]
lisp123 has quit [Remote host closed the connection]
notzmv has joined #commonlisp
pillton has quit [Quit: ERC (IRC client for Emacs 27.2)]
notzmv has quit [Ping timeout: 248 seconds]
s-liao96 has quit [Ping timeout: 250 seconds]
s-liao has joined #commonlisp
[deleted] has joined #commonlisp
livoreno has quit [Ping timeout: 248 seconds]
lisp123 has joined #commonlisp
Cymew has quit [Ping timeout: 260 seconds]
tyson2 has joined #commonlisp
[deleted] has quit [Ping timeout: 260 seconds]
livoreno has joined #commonlisp
azimut has quit [Remote host closed the connection]
azimut has joined #commonlisp
yauhsien has quit [Remote host closed the connection]
yauhsien has joined #commonlisp
yauhsien has quit [Remote host closed the connection]
jeko has joined #commonlisp
yauhsien has joined #commonlisp
yosef` has quit [Remote host closed the connection]
livoreno has quit [Ping timeout: 248 seconds]
yauhsien has quit [Ping timeout: 246 seconds]
trumae has joined #commonlisp
heisig has joined #commonlisp
lisp123 has quit [Remote host closed the connection]
Psybur has quit [Ping timeout: 240 seconds]
Psybur has joined #commonlisp
yauhsien has joined #commonlisp
Psybur has quit [Ping timeout: 250 seconds]
Psybur has joined #commonlisp
Bike has joined #commonlisp
micro has joined #commonlisp
rgherdt has quit [Remote host closed the connection]
notzmv has joined #commonlisp
Psybur has quit [Ping timeout: 260 seconds]
<zacque> Is there a function that append to a list if the argument is non-nil, and don't append if is nil?
Psybur has joined #commonlisp
<zacque> I feel like there is a clever way to achieve this with some built-in function
heisig has quit [Ping timeout: 248 seconds]
<Xach> zacque: it is never clever to append to the end of a list
<zacque> E.g. (foo 1 2) => '(1 2), (foo 1 2 3) => '(1 2 3), but the thing is parameter of 3 is &optional, not of &rest
<zacque> Xach: Oh, okay...
<Xach> singly-linked lists aren't good at adding to the end, unless you do some bookkeeping to track the end in some other way
<Xach> Sometimes it must be done anyway
<Xach> There isn't a clever function for what you describe, though.
<zacque> Xach: I see, thanks for informing
<zacque> Xach: What is the bookkeeping method you meant for tracking the end?
<zacque> Like storing (last <list>) to a variable?
<zacque> Or storing `cdr` of a list?
<zacque> Or something index variable?
<Xach> zacque: always keeping track of the last cons of the list, and updating whenever appending. so instead of just storing the head cons, you store both the head and tail. then you have to use new functions to work with those two conses sensibly.
yauhsien has quit [Remote host closed the connection]
<Xach> I think there are simple queue examples to be found for this idea
yauhsien has joined #commonlisp
<zacque> Ah, make sense, it's like having a pointer pointing to the end of the linked list
<Xach> it's exactly that
<Xach> that name is so hard to read and say
<zacque> Hmmm, what the COLLECT macro does is not obvious to me
<hayley> It maintains a pointer to the end of the linked list, and "appending" modifies the end, and the pointer.
<hayley> Doing destructive operations on linked lists hurts my head, honestly. But collecting like this is bearable.
<jeko> zacque: what are you ultimately trying to do? There may be other ways to achieve your goal that don't involve keeping pointers around
<zacque> hayley: Oh, so every calls to the `function` in the `body` will append to the end of the list?
<hayley> Right.
yauhsien has quit [Ping timeout: 256 seconds]
Psybur has quit [Ping timeout: 250 seconds]
<zacque> jeko: Let me see, I want to build a funcall form dynamically
Psybur has joined #commonlisp
<zacque> The problem is that the function has some optional parameter, but I can't just pass nil as an argument, cause you won't know whether the default value is nil
yewscion has joined #commonlisp
<zacque> So I think it's best to build a shorter list when there is no optional argument
<Xach> well, you may be able to use the suppliedp feature
<Xach> Oh, I think probably not, sorry.
<zacque> No, cause the interface is fixed
<zacque> So, given that the function "signature" is (defun foo (a b &optional c d e)), I want (foo 1 2) => '(1 2), (foo 1 2 3) => '(1 2 3), (foo 1 2 3 4 5) => '(1 2 3 4 5)
<zacque> It looks simple, but I couldn't think of a simple way to do that
<zacque> Nvm, I should have come up with a working solution first, then ask for a simpler approach.
<zacque> A naive approach: https://paste.debian.net/1236754/
attila_lendvai has quit [Quit: Leaving]
<Xach> It can't be called as (foo 1 2 nil)?
attila_lendvai has joined #commonlisp
<zacque> Xach: No...
<Xach> What you have looks pretty reasonable to me, then.
<zacque> Xach: Ya...
<zacque> But not quite good yet, cause the number of optional arguments may varies from functions to functions
<zacque> I could generate the `cond` form programmatically though
<zacque> I'll think about that
<zacque> Xach: Thanks
notzmv has quit [Ping timeout: 240 seconds]
Psybur has quit [Read error: Connection reset by peer]
Psybur has joined #commonlisp
s-liao22 has joined #commonlisp
s-liao has quit [Quit: Client closed]
Bike has quit [Quit: Connection closed]
Bike has joined #commonlisp
aartaka has quit [Read error: Connection reset by peer]
Psybur has quit [Ping timeout: 268 seconds]
aartaka has joined #commonlisp
Psybur has joined #commonlisp
Psybur has quit [Read error: Connection reset by peer]
Psybur has joined #commonlisp
s-liao22 has quit [Ping timeout: 250 seconds]
fitzsim has joined #commonlisp
rotateq has quit [Remote host closed the connection]
treflip has joined #commonlisp
s-liao has joined #commonlisp
zacque has quit [Quit: Goodbye :D]
s-liao has quit [Client Quit]
heisig has joined #commonlisp
hhdave has quit [Ping timeout: 272 seconds]
hhdave has joined #commonlisp
tyson2 has quit [Remote host closed the connection]
v88m has joined #commonlisp
Psybur has quit [Remote host closed the connection]
Psybur has joined #commonlisp
aartaka has quit [Read error: Connection reset by peer]
aartaka has joined #commonlisp
admich has joined #commonlisp
yauhsien has joined #commonlisp
igemnace has quit [Remote host closed the connection]
Inline has joined #commonlisp
yauhsien has quit [Remote host closed the connection]
occ has quit [Ping timeout: 260 seconds]
occ has joined #commonlisp
yauhsien has joined #commonlisp
yauhsien has quit [Remote host closed the connection]
eddof13 has joined #commonlisp
szkl has joined #commonlisp
tyson2 has joined #commonlisp
ebrasca has joined #commonlisp
eddof13 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
yauhsien has joined #commonlisp
eddof13 has joined #commonlisp
heisig has quit [Quit: Leaving]
yauhsien has quit [Remote host closed the connection]
<prokhor__> beach: I've got some questons about your CLOSOS if you don't mind:
<beach> I don't mind at all.
<prokhor__> 1: Concenrning the object store: Did you consider reusing ideas & conde from the statice object store?
Psybur has quit [Ping timeout: 248 seconds]
cage has joined #commonlisp
<beach> I have not considered that because I am unaware of it. Either way, the object store is the part that I am the least certain about.
<prokhor__> 2: are you familiar with Open Geneera or the VLM: would you say it could be worth to revive some components of it
Catie has joined #commonlisp
<beach> Genera is proprietary software, so it can't be used legally.
frgo has joined #commonlisp
<prokhor__> they intend to release it for non-commercial use soon
<prokhor__> (at least thats what some guy on #symbolics told me...
<beach> Oh, Statice stores the data in a file, so that's not an option.
Psybur has joined #commonlisp
<beach> I think it was made for a system that is not already university persistent.
<White_Flame> prokhor__: it's a desire, not a plan, to release it as such
<White_Flame> (as far as I've heard)
<prokhor__> 3: woould you consider building sth like http://pyke.sourceforge.net/PyCon2008-paper.html on top of your system for code reusability?
<beach> I would not consider doing that myself, but people are of course free to use the system as they please. I am more interested in the properties of the system itself, and I have plenty of work with just that.
yauhsien has joined #commonlisp
<prokhor__> White_Flame: I dont want to argue about mere rumors, but my info was, that the owners finally decided to sell theyr tagged architecture patents & release the rest...
<_death> there are other object stores like pclos and metastore.. that, too, seem not to be publicly available (code-wise)
<White_Flame> ah, cool then
<White_Flame> what I heard was quite a few months ago by now
<beach> Every time I hear "object store", I think of a system that is meant to be used in order to store objects from a non-persistent image to secondary memory. None of that stuff is needed on a system with universal persistence.
<prokhor__> did you use the vlm - or even the original Genera?
<prokhor__> @ White_Flame
<White_Flame> I read everything there is about genera/opengenera, and tinkered with VLM a bit, and wrote an Ivory emulator
<White_Flame> but not a serious user of it in any capacity, just interested in what the tech is
<prokhor__> I am thinking of simply "reusing" the source code for at least statice & joshua for some time now...
<White_Flame> that should just be all "userspace" as far as I'm aware
yauhsien has quit [Ping timeout: 248 seconds]
<prokhor__> I even had in mind reviving SCL, like there are efforts for interlisp..
<prokhor__> yeah, i am analyzing the code for some time now...
<White_Flame> all the stuff for using local heap regions can be discarded, as they're just GC optimization. not sure what other genera specifics there are in there
<White_Flame> (unless there's quota limits involved, I guess)
<White_Flame> s/genera specifics/genera low-level stuff/
<prokhor__> do you know what exactly the VLM200 file does? does it give an initial lisp system? is it parts of the sys/sys2 modules compiled?
<White_Flame> I don't know, I deal with booting from VLM-style images which don't hit lisp system files yet
<prokhor__> k...
<prokhor__> do you think theres potential in the idea of reviving it as soon as it will be possible? eg. with some new compiler & some multicore kernel?
<White_Flame> I don't think so. I think a workalike on top of CL with a compatibility lib would be a better option
<prokhor__> like: developing acual code with a new version of genera, not mere retrocomputing
<prokhor__> how about porting the code, say, to sbcl?
<White_Flame> my ivory emulator compiles ivory functions in to native common lisp functions
<White_Flame> (which twiddle a bunch of emulated state)
<prokhor__> is it on github? link? (pls ;) )
<White_Flame> hmm, no only on my local repos right now. It hangs after executing a few hundred thousand boot instructions currently
<prokhor__> i figured out that at least a lot of the macro definitions from genera also work on modern common lisps...
<beach> prokhor__: How would this "new version of genera" happen?
<prokhor__> you mean my plan/ agenda?
<White_Flame> my desire is actually just to glean ideas from it, not reimplement it
<beach> prokhor__: I guess so, yes.
<prokhor__> beach: 1. write a new compiler & gc
orestarod has joined #commonlisp
<random-nick> wasn't there some talk about a official-ish modern release of genera?
<White_Flame> yes, but the "current" genera is still only for VLM, and VLM is now for x86 & mac m1
<prokhor__> 2. rewriting the kernel, mimicking the symbols the original scheduler package exports
<White_Flame> (still not open source either)
<beach> prokhor__: I see.
<prokhor__> 3. (?) write some translator form original clim to clim2 or even mcclim
* White_Flame is afk
<prokhor__> 4. trying to reuse as much as possible, until somebody changes it..
<prokhor__> thats as far as i got...
<beach> prokhor__: What about the legal aspect of it?
<beach> prokhor__: Your plan sounds very illegal to me.
<prokhor__> i'd be happy to get any feedback from you
<prokhor__> well... thats why i am waiting atm...
<beach> OK.
<White_Flame> no need to wait, fiddle now, release later
<beach> So I personally don't think genera is good enough for modern needs.
<beach> It did not take into account attacks from the Internet.
<beach> And I don't think it had universal persistence.
<prokhor__> but yes: even if i could manage to make 1-3 happen alone, i couldnt even put it on github to attract a community..
v88m has quit [Ping timeout: 248 seconds]
<prokhor__> beach: at least i was considering to use a rewrite of its mail client for you CLOSOS :D
v88m has joined #commonlisp
<beach> Heh, OK.
<prokhor__> yeas, there is a lot to be done.. on the other side theres sth to build on...
<beach> I understand your point.
<prokhor__> in 300k LOC there should be at least some stuff, which hasnt to be reinvented..
<prokhor__> also:
<prokhor__> vlm runs as a linux-process, so protection could come from linux
<prokhor__> (you have to disable SELinux to use it though)
<Guest74> lots of code dealing with 1bit graphics to be saved.
<prokhor__> also: everything in genera is already written in clos or flavor plus well documented..
<prokhor__> i think its not that hard to write some transalator from flavor to clos, allegro even still has some support for flavors..
<beach> prokhor__: If you want a system that has all the nice software that Genera does, I think your idea is fine, modulo the legal aspect of it. Any translation of existing software would be derived work. However, my goal is to try to prove that we can do better, not to have something complete from the start.
<prokhor__> beach: LispWorks' knowledgeworks subsystem implements nameless classes for its object system (AMOP) do you think that a prerequisite for a oodb?
<prokhor__> i see...
yauhsien has joined #commonlisp
<prokhor__> a concept car like oberon...
<beach> prokhor__: Again, I am not thinking in terms of an object-oriented data base. I am considering universal persistence which will make such things unnecessary.
<prokhor__> could you point me to sth explaining universal persistence? link?
<prokhor__> i only just read the first 3 chapters of you CLOSOS specs..
<beach> prokhor__: Dinner is imminent here, so I may not have the time. But it basically means that there is no distinction between primary and secondary memory. All is just primary as far as the user is concerned. When you turn the system on, it is in the state it was in when you turned it off.
<prokhor__> *primary memory serving as cache for secondary*
<beach> You can view it that way if you like. But the operations are those of the primary memory.
<prokhor__> how do you intend to save the image between boots?
<beach> That is documented in a specific chapter. Techniques are known. I think I invented the second one.
<prokhor__> *enjoy your dinner* :)
<beach> It is saved as snap shots, so even a crash will have the image saved.
<beach> Thanks.
<prokhor__> thx for the answers & feedback...
<beach> Pleasure.
<beach> Feel free to ask again. I'll be back tomorrow morning (UTC+2).
MajorBiscuit has quit [Ping timeout: 248 seconds]
Psybur has quit [Read error: Connection reset by peer]
Psybur has joined #commonlisp
poselyqualityles has joined #commonlisp
karlosz has joined #commonlisp
Oddity has joined #commonlisp
Oddity has quit [Ping timeout: 272 seconds]
treflip has quit [Quit: Quit]
jeko has quit [Remote host closed the connection]
v88m has quit [Read error: Connection reset by peer]
mon_aaraj has quit [Ping timeout: 256 seconds]
mon_aaraj has joined #commonlisp
Psybur has quit [Ping timeout: 250 seconds]
Psybur has joined #commonlisp
Oddity has joined #commonlisp
Dynom has joined #commonlisp
Psybur has quit [Ping timeout: 256 seconds]
sander has joined #commonlisp
tyson2 has quit [Remote host closed the connection]
aartaka has quit [Read error: Connection reset by peer]
aartaka has joined #commonlisp
simendsjo has joined #commonlisp
Psybur has joined #commonlisp
Devon has quit [Ping timeout: 260 seconds]
Devon has joined #commonlisp
admich has quit [Ping timeout: 272 seconds]
aartaka has quit [Ping timeout: 260 seconds]
Devon has quit [Ping timeout: 272 seconds]
aartaka has joined #commonlisp
Devon has joined #commonlisp
waleee has joined #commonlisp
aartaka has quit [Ping timeout: 272 seconds]
aartaka has joined #commonlisp
cosimone has quit [Remote host closed the connection]
MajorBiscuit has joined #commonlisp
szkl has quit [Quit: Connection closed for inactivity]
cosimone has joined #commonlisp
aeth has quit [Ping timeout: 272 seconds]
MajorBiscuit has quit [Ping timeout: 246 seconds]
aeth has joined #commonlisp
aartaka has quit [Read error: Connection reset by peer]
aartaka has joined #commonlisp
karlosz has quit [Quit: karlosz]
tane has joined #commonlisp
tane has joined #commonlisp
tane has quit [Changing host]
mon_aaraj has quit [Ping timeout: 250 seconds]
Psybur has quit [Ping timeout: 268 seconds]
mon_aaraj has joined #commonlisp
Psybur has joined #commonlisp
occ has quit [Ping timeout: 272 seconds]
Psybur has quit [Ping timeout: 268 seconds]
Psybur has joined #commonlisp
tyson2 has joined #commonlisp
masinter has joined #commonlisp
rawley has joined #commonlisp
yauhsien has quit [Remote host closed the connection]
yauhsien has joined #commonlisp
simendsjo has quit [Ping timeout: 268 seconds]
MajorBiscuit has joined #commonlisp
cage has quit [Quit: rcirc on GNU Emacs 27.1]
yauhsien has quit [Ping timeout: 246 seconds]
MajorBiscuit has quit [Client Quit]
prokhor__ has quit [Ping timeout: 256 seconds]
Lord_of_Life_ has joined #commonlisp
Lord_of_Life has quit [Ping timeout: 246 seconds]
Lord_of_Life_ is now known as Lord_of_Life
yauhsien has joined #commonlisp
yauhsien has quit [Ping timeout: 272 seconds]
Dynom has quit [Quit: WeeChat 3.5]
mon_aaraj has quit [Ping timeout: 272 seconds]
Posterdati has quit [Ping timeout: 260 seconds]
mon_aaraj has joined #commonlisp
tane has quit [Quit: Leaving]
dra has joined #commonlisp
Posterdati has joined #commonlisp
yauhsien has joined #commonlisp
aartaka has quit [Ping timeout: 260 seconds]
<Demosthenex> ok, so i'm confused. i have a function that does something, i hit compile and it recompiles fine. but then i have a dispatch table with an entry referring to that function, why do i have to refresh the dispatch eevery time too?
<Demosthenex> i thought calling it by name is enough
<Bike> Demosthenex: do you have 'foo in the table, or #'foo?
<Demosthenex> Bike: #'foo
<Demosthenex> i thought that was preferred?
yauhsien has quit [Ping timeout: 260 seconds]
<Bike> well, there you go. that will resolve immediately, so it will be the original definition
<Demosthenex> ok, i'll trry a normal ', ty
rawley has quit [Remote host closed the connection]
Psybur has quit [Read error: Connection reset by peer]
Psybur has joined #commonlisp
Psybur has quit [Ping timeout: 256 seconds]
<mfiano> Demosthenex: Yeah there is a runtime lookup of the fedefinition with a quote, but sharpsign-quote refers to the function that exists right then and there.
Psybur has joined #commonlisp
cjb has joined #commonlisp
<mfiano> For some definition of runtime that is. As always, things get hairy when talking about compilation phases of CL.
Psybur has quit [Ping timeout: 260 seconds]
Psybur has joined #commonlisp
<Demosthenex> np, i applied a best practice i didn't fully grok
<Demosthenex> learned something new
<Demosthenex> i just wrapped my project in postmodern with-transaction, and a few other error handle points so i could hotreload and retry, then was confused why it never happened ;]
<mfiano> quote will always refer to a function in the global environment, which you can use to your advantage in cases like this, or when you need to disambiguate a local flet/labels function.
<Demosthenex> it'll stick with me now that i've hit it ;]
<mfiano> It's exciting when you discover something new about Lisp and gives you a stronger appreciation for how well it is designed.
<jackdaniel> mfiano: did you use in cl-sdl2 an opengl context in a dedicated thread?
<masinter> designed by committee
<White_Flame> Demosthenex: technically that is an optimization practice, not necessarily "best" depending on situation
wyrd has quit [Ping timeout: 240 seconds]
wyrd has joined #commonlisp
<random-nick> isn't "designed by committee" usually disparaging when it comes to programming related things?
dra has quit [Quit: Leaving]
cjb has quit []
cjb has joined #commonlisp
jeko has joined #commonlisp
<_death> usually, but (i) the committee did a pretty good job (thanks masinter) and (ii) not all of CL was designed by a committee, much came from its predecessors..
<Guest74> random-nick: it probably depends on who says it.
eddof13 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
yewscion has quit [Ping timeout: 246 seconds]
<_death> in this case I'm guessing that the committee much simplified funcall/apply semantics, as maclisp was much gnarlier
<mfiano> jackdaniel: I should do a writeup of my method sometime, but the short answer is no. I use one of Sly's builtin features to essentially run OpenGL in the REPL's thread, with a hack to make it seem non-blocking.
euandreh has quit [Quit: WeeChat 3.4.1]
euandreh has joined #commonlisp
yauhsien has joined #commonlisp
attila_lendvai has quit [Ping timeout: 248 seconds]
yauhsien has quit [Ping timeout: 256 seconds]
<_death> for example you could funcall arrays, special functions, symbols, and functional objects (think funcallable instances) like streams.. looking at the chinual I also notice some format directives that have been simplified/dropped.. like ~:| which would clear the screen (if possible) or ~Q which had format call a function (kinda like ~/, but function didn't need to be named)
<_death> ~X used to output spaces...
orestarod has quit [Ping timeout: 248 seconds]
aeth has quit [Ping timeout: 260 seconds]
eddof13 has joined #commonlisp
Catie has quit [Ping timeout: 268 seconds]
aeth has joined #commonlisp
masinter has quit [Quit: ~ Trillian - www.trillian.im ~]
shka has quit [Ping timeout: 272 seconds]
akoana has joined #commonlisp
Catie has joined #commonlisp
random-nick has quit [Ping timeout: 260 seconds]
psf has quit [Ping timeout: 260 seconds]
psf has joined #commonlisp