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/>
<nij-> standard: "The set of special operator names is fixed in Common Lisp; no way is provided for the user to define a special operator. " The set of special operator names is fixed in Common Lisp; no way is provided for the user to define a special operator.
<ixelp> CLHS: Section 3.1.2.1.2.1
<nij-> So the standard bans the implementation from giving the user option to define new special ops.. I wonder if the implementation can provide more special ops though.
mesuutt has quit [Ping timeout: 260 seconds]
amb007 has joined #commonlisp
awlygj has joined #commonlisp
amb007 has quit [Ping timeout: 260 seconds]
X-Scale has joined #commonlisp
<bike> implementations can and do provide other special operators
<nij-> I see..
awlygj has quit [Ping timeout: 268 seconds]
nij- has quit [Ping timeout: 245 seconds]
awlygj has joined #commonlisp
<bike> i don't know how useful a special operator like that would be though, compared to just having an eval function with an environment parameter
<bike> kernel has a similar special operator called $remote-eval or something, and part of the idea was to use it to e.g. evaluate code in a standard environment a la with-standard-io-syntax, but i don't know how practically useful that is
AetherWind has joined #commonlisp
yitzi has joined #commonlisp
ronald has joined #commonlisp
ronald_ has quit [Read error: Connection reset by peer]
AetherWind has quit [Quit: Lost terminal]
random-nick has quit [Ping timeout: 256 seconds]
istewart has joined #commonlisp
mesuutt has joined #commonlisp
nij- has joined #commonlisp
mesuutt has quit [Ping timeout: 255 seconds]
yitzi has quit [Remote host closed the connection]
admich1 has quit [Ping timeout: 252 seconds]
<nij-> Does it mean "some" rather than "any" in "interned adj. Trad. 1. (of a symbol) accessible in any package." ? https://novaspec.org/cl/26_1_Glossary#interned
<ixelp> 26.1 Glossary | Common Lisp Nova Spec
admich1 has joined #commonlisp
<gilberth> That's a grammar question.
<nij-> Sorry for my bad grammar. English isn't my native. But this reads to me like it saying the symbol is accessible in *every* package.
holycow has joined #commonlisp
doulos05 has quit [Ping timeout: 240 seconds]
<gilberth> Neither is it mine. But no, I don't think that "any" would imply every.
doulos05 has joined #commonlisp
<gilberth> Consider a questions: "Is FOO accessible in any package?" "Yes, it is accessible from CL-USER, but not from FANCY-PACKAGE."
mesuutt has joined #commonlisp
<nij-> Grammar sites and LLM suggest any means one or more. Ok.. so that's fine. Sorry!
mesuutt has quit [Ping timeout: 252 seconds]
<gilberth> I was more referring to to my ears a sentence like "I have any apples, I should make an apple pie." sounds wrong while "I have some apples." sounds right.
<gilberth> I believe negation implies "any". "I don't have any apples, so I cannot make an apple pie." sounds ok. While "I don't have some apples." sounds odd. Maybe someone better at English than me could clarify.
tok has quit [Remote host closed the connection]
attila_lendvai has quit [Ping timeout: 260 seconds]
josrr has quit [Remote host closed the connection]
jonatack has quit [Ping timeout: 255 seconds]
amb007 has joined #commonlisp
waleee has quit [Ping timeout: 246 seconds]
echos has quit [Quit: cheerio]
amb007 has quit [Ping timeout: 245 seconds]
istewart has quit [Quit: Konversation terminated!]
istewart has joined #commonlisp
mesuutt has joined #commonlisp
mesuutt has quit [Ping timeout: 245 seconds]
<nij-> I remember seeing "any" used in an affirmative English sentence. But it doesn't show up quite often nowadays, at least in verbal english.
<paulapatience> gilberth's ear is good.
<paulapatience> One example where any strongly suggests all would be: My code works with any compiler.
<paulapatience> But it is indeed a source of ambiguity.
pranav has quit [Remote host closed the connection]
<nij-> Can a symbol be interned in two packages simultaneously?
<nij-> Oh yes - "the same symbol can be interned in more than one package." Sorry this is a stupid question.
<ixelp> symbol | Common Lisp Nova Spec
<nij-> Oh.. that's what 'USE does.
<gilberth> Nope.
<gilberth> You would need to "import" a symbol to make it interned in some other package than its home package.
<gilberth> Look at the second return value of https://novaspec.org/cl/f_find-symbol
<ixelp> find-symbol | Common Lisp Nova Spec
<nij-> !! I see. Thanks
<nij-> This is a nuance that I think I will easily forget again..
<gilberth> This use list as with :USE in defpackage is more like a search path.
<nij-> Yep..
<nij-> Why does the standard differ these two?
<nij-> How is such seperation useful?
<gilberth> Because that are different things. Begins with that to refer to symbols in used packages (without a package qualifier) would only work if that symbol is exported. And the used package can also change.
<gilberth> And of course when you use a package you use all symbol exported symbols from that package.
<gilberth> You might however want to only import one specific symbol from another package. Or a few.
<gilberth> So both have it uses.
<nij-> I see.
decweb has quit [Ping timeout: 252 seconds]
mesuutt has joined #commonlisp
mesuutt has quit [Ping timeout: 268 seconds]
PuercoPop has joined #commonlisp
emaczen has joined #commonlisp
nij- has quit [Ping timeout: 255 seconds]
admich1 has quit [Ping timeout: 240 seconds]
admich1 has joined #commonlisp
theBlackDragon has quit [Ping timeout: 264 seconds]
theBlackDragon has joined #commonlisp
istewart has quit [Quit: Konversation terminated!]
mesuutt has joined #commonlisp
mesuutt has quit [Ping timeout: 260 seconds]
emaczen has quit [Ping timeout: 264 seconds]
chomwitt has joined #commonlisp
danza has joined #commonlisp
ronald has quit [Ping timeout: 268 seconds]
ronald has joined #commonlisp
mesuutt has joined #commonlisp
mesuutt has quit [Ping timeout: 272 seconds]
ronald has quit [Read error: Connection reset by peer]
ronald has joined #commonlisp
amb007 has joined #commonlisp
amb007 has quit [Read error: Connection reset by peer]
alcor has joined #commonlisp
alcor has quit [Changing host]
alcor has joined #commonlisp
amb007 has joined #commonlisp
amb007 has quit [Ping timeout: 260 seconds]
amb007 has joined #commonlisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
shka has joined #commonlisp
amb007 has quit [Ping timeout: 245 seconds]
amb007 has joined #commonlisp
chomwitt has quit [Ping timeout: 268 seconds]
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
amb007 has quit [Ping timeout: 255 seconds]
msavoritias has joined #commonlisp
amb007 has joined #commonlisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
danza has quit [Remote host closed the connection]
danza has joined #commonlisp
mesuutt has joined #commonlisp
chomwitt has joined #commonlisp
OlCe has joined #commonlisp
mesuutt has quit [Ping timeout: 256 seconds]
pranav has joined #commonlisp
rtypo has joined #commonlisp
chomwitt has quit [Ping timeout: 256 seconds]
danza has quit [Ping timeout: 256 seconds]
amb007 has quit [Ping timeout: 260 seconds]
<younder> beach: All implementation's I have looked at use a copy-on-write approach to multi-threading. Has this been addressed in the updated spec?
amb007 has joined #commonlisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
<younder> I mean for a global environment.
rgherdt has joined #commonlisp
OlCe has quit [Read error: Connection reset by peer]
wacki has joined #commonlisp
<beach> That would be very strange.
<beach> So if you do (defun foo ...) in one thread, the function foo will not be defined in a different thread?
mesuutt has joined #commonlisp
<younder> heh?
<beach> And, the only "updated spec" I know of is WSCL, and I think multiple threads would be way too hard for WSCL, at least initially.
<beach> younder: DEFUN does a (setf (fdefinition ...)) which writes to the global environment, so if it is then first copied, the function won't be seen in other threads.
notzmv has quit [Remote host closed the connection]
<beach> Besides, no current Common Lisp implementation has an object representing the global environment, so to write-protect it that way would mean write-protecting almost the entire system.
mesuutt has quit [Ping timeout: 272 seconds]
<younder> We must be talking past each other. How do you deal with a dynamic variable (usually global) in a thread. You just read the global one. It is fine if all threads do is read them. But what happens on write? You make a thread local copy and write to that. This can all be made to work as long as you check if there is a thread local copy first and on fail fallback on reading the global (top process) one.
pve has joined #commonlisp
<beach> I believe that in all current Common Lisp implementations with threads, the global bindings is shared between all the threads.
<beach> And if you are not talking about the global value, and instead you are referring to a thread-local binding of it, then you are not using the global environment.
<younder> I mean that is what dynamic binding does anyhow even in a single thread.
<beach> If the variable is locally bound, then writing to it does not affect the global environment.
<beach> How the dynamic environment is represented is outside the scope of any specification anyway, let alone WSCL.
amb007 has quit [Ping timeout: 245 seconds]
amb007 has joined #commonlisp
attila_lendvai has joined #commonlisp
mesuutt has joined #commonlisp
pranavats has left #commonlisp [Disconnected: Replaced by new connection]
pranavats has joined #commonlisp
mesuutt has quit [Ping timeout: 252 seconds]
mesuutt has joined #commonlisp
mesuutt has quit [Ping timeout: 256 seconds]
random-jellyfish has quit [Ping timeout: 256 seconds]
admich1 has quit [Ping timeout: 255 seconds]
admich1 has joined #commonlisp
dino_tutter has joined #commonlisp
danza has joined #commonlisp
tok has joined #commonlisp
danza has quit [Remote host closed the connection]
danza has joined #commonlisp
donleo has joined #commonlisp
mesuutt has joined #commonlisp
mesuutt has quit [Ping timeout: 260 seconds]
danza_ has joined #commonlisp
danza has quit [Read error: Connection reset by peer]
decweb has joined #commonlisp
danza_ has quit [Remote host closed the connection]
danza_ has joined #commonlisp
mesuutt has joined #commonlisp
waleee has joined #commonlisp
mesuutt has quit [Ping timeout: 264 seconds]
awlygj has quit [Ping timeout: 268 seconds]
awlygj has joined #commonlisp
rgherdt has quit [Ping timeout: 245 seconds]
wacki has quit [Quit: My iMac has gone to sleep. ZZZzzz…]
rgherdt has joined #commonlisp
awlygj has quit [Quit: Lost terminal]
random-nick has joined #commonlisp
danza_ has quit [Ping timeout: 252 seconds]
mgl_ has joined #commonlisp
waleee has quit [Ping timeout: 255 seconds]
wacki has joined #commonlisp
Guest29 has joined #commonlisp
emilknievel has quit [Remote host closed the connection]
Inline has quit [Ping timeout: 268 seconds]
Lord_of_Life has quit [Ping timeout: 268 seconds]
Lord_of_Life has joined #commonlisp
mesuutt has joined #commonlisp