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/>
pve has quit [Quit: leaving]
<NotThatRPG> I guess I can compare CL-STORE and CONSPACK.
anticomputer has quit [Remote host closed the connection]
anticomputer has joined #commonlisp
mingus1 has joined #commonlisp
mingus has quit [Ping timeout: 252 seconds]
mingus1 is now known as mingus
epony has quit [Ping timeout: 268 seconds]
speskk has joined #commonlisp
speskk has quit [Changing host]
speskk has joined #commonlisp
jmdaemon has quit [Quit: ZNC 1.8.2 - https://znc.in]
jmdaemon has joined #commonlisp
NotThatRPG is now known as NotThatRPG_away
<mfiano> +1 for conspack
<mfiano> Oh right Bike, didn't you end up making some changes to that?
KaitoDaumoto has joined #commonlisp
<mfiano> Ah seems forked but no PR
aartaka has quit [Ping timeout: 272 seconds]
aartaka has joined #commonlisp
Jach has quit [Ping timeout: 260 seconds]
<Bike> i couldn't figure out how to run the tests
speskk has quit [Ping timeout: 265 seconds]
azimut has quit [Ping timeout: 255 seconds]
random-nick has quit [Ping timeout: 264 seconds]
epony has joined #commonlisp
akonai has quit [Ping timeout: 246 seconds]
mingus1 has joined #commonlisp
mita has joined #commonlisp
mingus has quit [Ping timeout: 252 seconds]
mingus1 is now known as mingus
mita has quit [Remote host closed the connection]
<mfiano> Oh...that's unfortunate.
<mfiano> I heard phoe likes to mess with that stuff. Maybe he can help so this can get merged upstream.
<mfiano> And if you have a problem on that end, I talk to the author fairly often and can give them a head's up.
<mfiano> I'm actually curious if phoe is back coding CL again, or if it was just a fluke the other day when he intercepted my Scheme conversation with both a MOP and MOP-less simulations removing the method lambda list congruency restriction. I was shocked. It reminded me of the good old days where phoe would just whip up answers to questions and the next day they would be full libraries with unit tests
<mfiano> and whatnot.
akonai has joined #commonlisp
aartaka has quit [Ping timeout: 272 seconds]
aartaka has joined #commonlisp
akonai has quit [Ping timeout: 252 seconds]
akonai has joined #commonlisp
akonai has quit [Ping timeout: 252 seconds]
nij- has quit [Ping timeout: 252 seconds]
akonai has joined #commonlisp
akonai has quit [Ping timeout: 260 seconds]
mingus1 has joined #commonlisp
mingus has quit [Ping timeout: 252 seconds]
mingus1 is now known as mingus
jeosol has joined #commonlisp
akonai has joined #commonlisp
akoana has joined #commonlisp
waleee has quit [Ping timeout: 246 seconds]
akonai has quit [Ping timeout: 272 seconds]
tyson2 has quit [Remote host closed the connection]
akonai has joined #commonlisp
akonai has quit [Ping timeout: 252 seconds]
akonai has joined #commonlisp
aartaka has quit [Ping timeout: 252 seconds]
aartaka has joined #commonlisp
akonai has quit [Ping timeout: 248 seconds]
akonai has joined #commonlisp
akonai has quit [Ping timeout: 260 seconds]
akonai has joined #commonlisp
akonai has quit [Ping timeout: 260 seconds]
aartaka has quit [Ping timeout: 260 seconds]
akonai has joined #commonlisp
aartaka has joined #commonlisp
akoana has quit [Quit: leaving]
akonai has quit [Ping timeout: 260 seconds]
anticomputer has quit [Ping timeout: 255 seconds]
aartaka has quit [Ping timeout: 256 seconds]
hrberg has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
hrberg has joined #commonlisp
anticomputer has joined #commonlisp
aartaka has joined #commonlisp
akonai has joined #commonlisp
holycow has quit [Quit: Lost terminal]
akonai has quit [Ping timeout: 246 seconds]
epony has quit [Read error: Connection reset by peer]
igemnace has quit [Ping timeout: 272 seconds]
aartaka has quit [Ping timeout: 264 seconds]
igemnace has joined #commonlisp
aartaka has joined #commonlisp
pranavats has joined #commonlisp
tibfulv has quit [Remote host closed the connection]
akonai has joined #commonlisp
tibfulv has joined #commonlisp
masinter has quit [Remote host closed the connection]
tibfulv has quit [Remote host closed the connection]
aartaka has quit [Ping timeout: 252 seconds]
tibfulv has joined #commonlisp
epony has joined #commonlisp
aartaka has joined #commonlisp
shka has joined #commonlisp
aartaka has quit [Ping timeout: 255 seconds]
aartaka has joined #commonlisp
akonai has quit [Ping timeout: 260 seconds]
aartaka has quit [Ping timeout: 260 seconds]
aartaka has joined #commonlisp
akonai has joined #commonlisp
akonai has quit [Ping timeout: 260 seconds]
anticomputer has quit [Quit: quit]
anticomputer_ has joined #commonlisp
akonai has joined #commonlisp
akonai has quit [Ping timeout: 260 seconds]
<phoe> mfiano: mmmmmmmmmmmmaybe
<phoe> Bike: it seems to be using a test framework that is nonstandard enough to not be in QL but non-obscure enough to be in Sabra's list, which is CheckL - https://github.com/rpav/CheckL
<ixelp> GitHub - rpav/CheckL: Why write programs in Common Lisp but tests like Java? Meet CheckL!
<mfiano> phoe: Bike needs help getting his rpav/conpack fork to run tests
<phoe> mfiano: I can infer as much from the above
<mfiano> So he can make sure it works before he makes a PR
<phoe> just cloning rpav/checkl next to bike/cl-conspack compiles but causes no tests to be run
<phoe> as in, (asdf:test-system :cl-conspack-test) has fiveam complaining that no tests were run
<phoe> likely this is the problem he mentioned
<mfiano> Hm
akonai has joined #commonlisp
<mfiano> I haven't used 5am or CheckL so your guess is probably better than mine
<mfiano> Recently switched to 1am and I'm loving it. Does exactly what I need and nothing more.
akonai has quit [Ping timeout: 255 seconds]
<phoe> yes, seems like the tests are run in a very non-standard way
<epony> The Latin Roman Catholic X masse II in old style for the funeral of Pope Emeritus Benedictus XVI proceeding at the moment on a television near you..
<phoe> epony: this is not #lispcafe
<mfiano> He's a troll that got banned from there and other lisp channels several times. Not sure if they are still in effect.
pve has joined #commonlisp
<phoe> Bike: (ql:quickload :cl-conspack-test) and then go into t/encode-decode.lisp and C-c C-x everything; it will highlight a test failure that shows variance between ((0 #1=(1 2 3) #1#) 16) and (0 #2=(1 2 3) #2#) but I have no idea yet which is the expected one and which is the actual one
<phoe> I assume that "previous result" comes from the t/test-values file and is the "right" thing, something that this file refers to as (:ARRAY 15 (2) T ((:LIST 16 1 2 3) (:REFERENCE 16)))
<phoe> but overall it seems that this test framework is very C-c C-c oriented, seems like running asdf:test-system does completely nothing for whatever reason and that would be a ticket on rpav/checkl I presume?
<mfiano> how many uses of with-slots do you see in the file you are currently viewing? :D
<phoe> t/encode-decode.lisp? without macroexpansion, zero
<mfiano> That dude sprinkles them over every one of his projects like a finishing move
<mfiano> Ok, be prepared for protocol evasion
* phoe starts expecting HTTP over DNS
<mfiano> heh
* hayley commits TCP fraud
<phoe> but yeah, the above seems like a hacky way to run the tests; a proper way would probably be awful stuff like reading the checkl manual
<phoe> but I ain't gonna do that now :D
* phoe runs back to work
<mfiano> haha
akonai has joined #commonlisp
akonai has quit [Ping timeout: 246 seconds]
_cymew_ has joined #commonlisp
akonai has joined #commonlisp
aartaka has quit [Ping timeout: 272 seconds]
aartaka has joined #commonlisp
rgherdt has joined #commonlisp
akonai has quit [Ping timeout: 260 seconds]
dino_tutter has quit [Quit: Leaving]
aartaka has quit [Ping timeout: 252 seconds]
akonai has joined #commonlisp
akonai has quit [Ping timeout: 265 seconds]
akonai has joined #commonlisp
akonai has quit [Ping timeout: 252 seconds]
rainthree has joined #commonlisp
_cymew_ has quit [Ping timeout: 260 seconds]
azimut has joined #commonlisp
random-jellyfish has joined #commonlisp
akonai has joined #commonlisp
<random-jellyfish> (typep #(0 "1" nil) '(vector integer)) returns true in sbcl
<random-jellyfish> why is that?
<beach> clhs upgraded-array-element-type
<ixelp> CLHS: Function UPGRADED-ARRAY-ELEMENT-TYPE
akonai has quit [Ping timeout: 272 seconds]
<beach> random-jellyfish: The type of a vector has nothing to do with what is stored in it, but what element type it is specialized to. In this case, (upgraded-array-element-type '(vector integer)) return T because SBCL does not have a vector type specialized to integer.
<beach> random-jellyfish: So your vector is of type (vector t).
<random-jellyfish> got it, thanks!
<beach> Sure.
<phoe> and TYPEP actually realizes this thing beach mentioned, and upgrades the type from (VECTOR INTEGER) to (VECTOR T) before doing the actual typecheck on the value
<pjb> random-jellyfish: for example, (typep #(0 "1" nil) '(vector fixnum)) #| --> nil |# because there's a specialized vector type for fixnum.
<pjb> random-jellyfish: you can test (every #'integerp #(0 "1" nil)) #| --> nil |#
<random-jellyfish> pjb interesting and useful
<phoe> another funny consequence is that (typep (make-array 10 :element-type 'bit) '(vector t)) is false
<pjb> TYPEP tests the type of the vector, not of the elements. Use EVERY to test each element.
<phoe> but (typep (make-array 10 :element-type 'bit) '(vector *)) is true! note the difference between T and * in the type specifier
<phoe> because (vector t) fits ONLY vectors that can hold any Lisp objects, but (vector *) matches ALL vectors
<random-jellyfish> is there a way to list all specialized types of vector?
<beach> random-jellyfish: The standard requires some.
<beach> random-jellyfish: So unless you are writing implementation-specific code, those are the only ones you can count on.
<phoe> beach: nah, in practice almost all implementations define their own specialized types for most common number types
<phoe> so single-floats, double-floats, ub8, ub16, ub32, ub64
<phoe> for numeric types, the standard AFAIK only requires bit vectors and strings to exist as specialized vectors
<phoe> er, s/for numeric types//
<phoe> and also sb8, sb16, sb32, sb64, I forgot about those
<pjb> An implementation could easily provide specialized arrays for element-types of size 1, 2, 4, 8.
<pjb> and 1/8 ;-)
Lord_of_Life_ has joined #commonlisp
<phoe> but yeah, for integer types, (remove-duplicates (loop for i from 1 to 256 collect (upgraded-array-element-type `(unsigned-byte ,i)) collect (upgraded-array-element-type `(signed-byte ,i))) :test #'equal) should list all of them, and if you are worried increase 64 to something more
<phoe> er, welp, I already increased it to 256
Lord_of_Life has quit [Ping timeout: 252 seconds]
<random-jellyfish> pjb ub8, ub16 , etc. don't get recognized in type descriptions in sbcl, are those just notations that you use?
<phoe> yes
<phoe> these are shorthands for (unsigned-byte ...) and (signed-byte ...)
<phoe> which are proper type specifiers in CL
<phoe> if you use these a lot you might want to define local DEFTYPE aliases like (deftype ub32 () '(unsigned-byte 32)) and so on
Lord_of_Life_ is now known as Lord_of_Life
<phoe> but it's nothing standardized
nij- has joined #commonlisp
attila_lendvai has joined #commonlisp
akonai has joined #commonlisp
jmdaemon has quit [Ping timeout: 265 seconds]
attila_lendvai has quit [Ping timeout: 246 seconds]
random-jellyfish has quit [Quit: Client closed]
akonai has quit [Ping timeout: 248 seconds]
dino_tutter has joined #commonlisp
akonai has joined #commonlisp
random-jellyfish has joined #commonlisp
random-jellyfish has quit [Client Quit]
random-jellyfish has joined #commonlisp
<random-jellyfish> if I save an sbcl image on a x86 machine can I load it on an ARM machine?
<random-jellyfish> I can't test this right now, that's why I ask
<hayley> Nope.
shka has quit [Quit: Konversation terminated!]
<random-jellyfish> so images contain machine specific information?
<phoe> yes
<phoe> in particular, x86 code
<phoe> you can't run this on an arm cpu
akonai has quit [Ping timeout: 246 seconds]
_cymew_ has joined #commonlisp
akonai has joined #commonlisp
dzj_ has joined #commonlisp
dzj_ has quit [Quit: ZNC 1.8.2 - https://znc.in]
random-nick has joined #commonlisp
dzj_ has joined #commonlisp
<pjb> random-jellyfish: that said, theorically, you could have images that are independent from the platform. You could have a look at clisp. There are still binary modules, but lisp code is compiled to a clisp VM that is independent from the platform. It's not supported by clisp to run an image across platform, but with some work, I think it could be achieved.
<pjb> random-jellyfish: on the other hand, deploying programs as source code is not a bad idea anyways.
random-jellyfish has quit [Quit: Client closed]
NotThatRPG_away has quit [Ping timeout: 252 seconds]
NotThatRPG has joined #commonlisp
nij- has left #commonlisp [Using Circe, the loveliest of all IRC clients]
akonai has quit [Ping timeout: 272 seconds]
akonai has joined #commonlisp
speskk has joined #commonlisp
speskk has quit [Changing host]
speskk has joined #commonlisp
<Bike> as far as i could tell, the way checkl works is that you run the tests once to get the correct results, and then further runs just check if anything's diverged. and if that's the case running them outside of a development cycle doesn't make much sense
cage has joined #commonlisp
<phoe> Bike: look at the asd file, there's a test-values file that are supposed to be "correct"
<phoe> and loading these along with the ASD system, I presume, is the first step you mention; every latter recompilation means a divergence from the correct value
peterhil has quit [Quit: Leaving]
Catie has quit [Ping timeout: 260 seconds]
rodicm has joined #commonlisp
tyson2 has joined #commonlisp
akonai has quit [Ping timeout: 248 seconds]
cage has quit [Remote host closed the connection]
akonai has joined #commonlisp
OlCe has joined #commonlisp
avocadoist has joined #commonlisp
akonai has quit [Ping timeout: 260 seconds]
akonai has joined #commonlisp
Lycurgus has joined #commonlisp
mingus has quit [Ping timeout: 260 seconds]
akonai has quit [Ping timeout: 265 seconds]
akonai has joined #commonlisp
MajorBiscuit has joined #commonlisp
akonai has quit [Ping timeout: 260 seconds]
NotThatRPG has quit [Ping timeout: 272 seconds]
dsx has joined #commonlisp
<dsx> Hello everyone. Is there a library to communicate with S3-like services (AWS, GCP, Azure, and Minio)? cl-s3 is outdated and ZS3 doesn't understand non-AWS s3 servers.
NotThatRPG has joined #commonlisp
akonai has joined #commonlisp
<Lycurgus> minio
aartaka has joined #commonlisp
Lycurgus has quit [Quit: Exeunt: personae.ai-integration.biz]
akonai has quit [Ping timeout: 255 seconds]
jmdaemon has joined #commonlisp
akonai has joined #commonlisp
random-jellyfish has joined #commonlisp
<pjb> dsx: there's cl-s3 and zs3. If one is outdated, you can patch it to make it up to date. If another doesn't support aws servers, youc an patch it to support aws server.
akonai has quit [Ping timeout: 252 seconds]
akonai has joined #commonlisp
rodicm has quit [Quit: Leaving]
rodicm has joined #commonlisp
Catie has joined #commonlisp
Catie has quit [Changing host]
Catie has joined #commonlisp
<dsx> pjb: I apologise for not being clear with my question. What I'm really looking for is a modern, up-to-date library to interact with AWS S3 and S3-like servers.
<mfiano> dsx: In CL, we mostly hack old code into custom things nobody else interacts with.
<mfiano> prove me wrong :)
<dsx> The Lisp Curse is real, eh? :)
aartaka has quit [Ping timeout: 255 seconds]
<dsx> That's very sad though. A bunch of good hackers re-inventing the same wheel over and over again.
<mfiano> dsx: Just because a project wasn't touched doesn't mean it's dead. It could mean that it has been working for the users it has, which could be just 1! With you forking it, reporting bugs, sending PRs from your fork back upstream, etc, you will be helping it not be dead.
<gilberth> Indeed. Most of the time the wheel was invented by Lisp hackers.
aartaka has joined #commonlisp
jmdaemon has quit [Ping timeout: 252 seconds]
<dsx> mfiano: zs3 has PR waiting sice March 13, 2020. I'm pretty sure xach doesn't care about zs3 anymore.
<mfiano> gilberth: How many edges does yours have? I came up with 4 for an optimal wheel.
<phoe> either that or he has other priorities though
<gilberth> mfiano: My wheel is egg-shaped.
<dsx> It's a 3 line patch for documentation that can be auto-merged in one click on GH. Nah, I'm pretty sure he doesn't care.
<mfiano> I think you should consider people's personal lives, instead of coming in here and complaining. Xach has been on leave for a while now.
<mfiano> For serious reasons.
<dsx> I'm sure he has serious reasons to be on leave.
rodicm has quit [Ping timeout: 260 seconds]
<dsx> That doesn't make zs3 more alive though.
<mfiano> I suppose it's easier to complain than to click the fork and hack away
<dsx> I'm not complaining
<jackdaniel> this got offtopic fast
<dsx> I've got my answers and the rest is just a conversation
ldb has joined #commonlisp
rainthree has quit [Ping timeout: 255 seconds]
johnjaye has quit [Ping timeout: 256 seconds]
johnjaye has joined #commonlisp
akonai has quit [Ping timeout: 260 seconds]
akonai has joined #commonlisp
aartaka has quit [Ping timeout: 272 seconds]
nij- has joined #commonlisp
ldb has quit [Remote host closed the connection]
masinter has joined #commonlisp
random-jellyfish has quit [Quit: Client closed]
cage has joined #commonlisp
akonai has quit [Ping timeout: 272 seconds]
aartaka has joined #commonlisp
jmdaemon has joined #commonlisp
johnjaye has quit [Ping timeout: 268 seconds]
akonai has joined #commonlisp
aartaka has quit [Ping timeout: 260 seconds]
waleee has joined #commonlisp
tyson2 has quit [Remote host closed the connection]
johnjaye has joined #commonlisp
nij- has quit [Ping timeout: 272 seconds]
akonai has quit [Ping timeout: 256 seconds]
akonai has joined #commonlisp
jmdaemon has quit [Ping timeout: 256 seconds]
aartaka has joined #commonlisp
Mandus has quit [Ping timeout: 260 seconds]
<Shinmera> dsx: I can assure you Zach does care, it's just a lot more difficult sometimes to get the motivation to look at things and do it, even if it doesn't seem like a lot of work.
akonai has quit [Ping timeout: 252 seconds]
<Shinmera> but I can tell you what usually makes me want to not help people: seeing them talk about me not caring
jolby has joined #commonlisp
jolby has quit [Client Quit]
jmdaemon has joined #commonlisp
aartaka has quit [Ping timeout: 260 seconds]
jeosol has quit [Quit: Client closed]
<dsx> Shinmera: no hard feelings, everyone has life. I'm reflecting what I'm seeing. If I'm wrong, well… I'm wrong.
<Shinmera> I'm saying that it can have an impact on other people when you insinuate bad things about them.
akonai has joined #commonlisp
<dsx> Did I?
<dsx> I'm sorry if that's the case. By all means, I had no intention to hurt anyone's feelings.
<Shinmera> Insinuating that someone does not care about their project is quite usually interpreted as a bad thing.
<dsx> I have no control how others interpret my words.
MajorBiscuit has quit [Ping timeout: 268 seconds]
<dbotton> I think the "Lisp Curse" is actually a sign of success.
<dbotton> The fact that Common Lisp has been so successful in having a living eco system so long that you see the debris of time
<phoe> I think the lisp curse actually doesn't exist and it's mostly a matter of not enough programmers which is directly a matter of not enough commercial powerhouses pouring money into development and promotion
<pjb> dsx: you were perfectly clear. Welcome to free software/open source. Now, if there was thousands of user asking for that library, perhaps some enterprize could decide to develop a commercial solution matching your requirements. Perhaps you could motivate thousands of users to need S3 in CL? In the meantime, it may be more efficient to work yourself on the existing libraries to make them up to date with your requirements. An alternative would be to hire a lisper
<pjb> dsx: in this day and age, money can motivate people…
<dbotton> That phoe is actually my point, it isn't a curse at all, so much done with so few
<dbotton> and so many inventions and first
<phoe> yes, but even no matter the language, it's much easier to get volunteers for unpaid maintenance when your programmerbase is three or four orders of magniture larger
<dbotton> of course
<phoe> at some point it doesn't matter how expressive the language is when you're short on people
<phoe> like, really short
<pjb> Even if you could clone Zach or other lispers, you'd still have to wait 15-20 years for our clones to be able to resume work… And they might be motivated to do something else anyways.
akonai has quit [Ping timeout: 248 seconds]
<phoe> this here the real reason there is no standard COPY-OBJECT protocol in common lisp
<dbotton> I never like to admit it but the lack of commercial support does affect things even for those that are doing FOSS dev, I have had to take off (mostly) for last month or so for really great things, but they eat up my free dev time.
<pjb> Now, if we had an easy way to build CL libraries usable by foreign programming languages, we could develop them in lisp and sell them to the general programming public.
<dbotton> My dream is to create something big enough for lots of people to do well financially
<ixelp> 4.4 Delivering a dynamic library
<dbotton> working on it :)
<pjb> and with ecl via libecl.
<dbotton> now also sbcl
<dbotton> they both do dynamic libs now
<pjb> So the question would be what is the market for a S3 CL library with a foreign interface that would be competitive, that could also be used directly in CL?
<pjb> If we could go this path, we could develop a small cottage industry of commercial CL libraries…
igemnace has quit [Remote host closed the connection]
jolby has joined #commonlisp
igemnace has joined #commonlisp
igemnace has quit [Remote host closed the connection]
jmdaemon has quit [Ping timeout: 260 seconds]
<phoe> you'd need to develop FASLs for people, but I guess that's doable
akonai has joined #commonlisp
<pjb> phoe: what do you mean? I'm saying that we want to provide C APIs for our libraries, so we may sell them to normal developers (C, C++, Java, Swift, Kotlin, Python, etc) to be able to finance CL developments.
<phoe> oh, that way! I misunderstood, I thought of commercial CL libraries for use within CL images
<phoe> sure, I understand now
aartaka has joined #commonlisp
<pjb> Note that this means two big constraints: 1- a "C" API for CL libraries is a serious difficulty. 2- you may want to use several such libraries, so the runtime (including the garbage collector) may need to cater for this. But I guess this is already handled via libecl or lispworks?
<pjb> phoe: well, you could also sell them for direct use in CL, but since CL customers would represent assumedly less than 1% of your customers, it may be free for them :-)
<Catie> Good incentive to learn Lisp, not having to pay for the library
<pjb> Yep.
nij- has joined #commonlisp
morganw has joined #commonlisp
akonai has quit [Ping timeout: 248 seconds]
varjag has joined #commonlisp
<dsx> This would make Lisp impractical.
tyson2 has joined #commonlisp
<phoe> why? having software in CL is kinda better than having no software in CL
<dsx> If one have to learn programming, then practical choice is language that already has library.
<Catie> In this hypothetical situation, both languages would have the library
<phoe> dsx: you're right, but what does #commonlisp have to do with it
<dsx> I'm half through Peter Siebel's «Practical Common Lisp» and by now know enough to make something useful for myself. Where else to go ask questions?
<jackdaniel> some people recommend #clschool
<dsx> jackdaniel: thank you
<jackdaniel> sure
n1to has joined #commonlisp
jmdaemon has joined #commonlisp
tyson2 has quit [Ping timeout: 255 seconds]
<jackdaniel> quiz of the day: what is an essential difference between (defclass ... ((x :initform *xxx*))) and (defclass ... ((x :initarg :x)) (:default-initargs :x *xxx*)) ;?
<Bike> i've honestly never really been clear on that, assuming you don't mean "the first one doesn't have an initarg"
<phoe> uhh, in one case you have an overridable keyword initarg and in the other you don't?
tyson2 has joined #commonlisp
<Catie> I think it's also got to do with what gets passed to SHARED-INITIALIZE if you don't specify a value?
<Catie> Or INITIALIZE-INSTANCE
<phoe> this can matter for inheritance because superclasses can define a different default initarg without re-specifying the whole slot
<jackdaniel> Catie wins $1M, congratulations
<jackdaniel> when you reinitialize instance, the initform will be reevaluated
<jackdaniel> while the slot value will be retained in the latter case
<phoe> oh, that's what you were thinking of
<Bike> huh, i see
<phoe> nice one
<jackdaniel> and it may get really awkward if *xxx* is not bound in the context of reinitialization
<Bike> because default initargs are put in by make-instance... right.
<Catie> Thank you Sonya Keene
akonai has joined #commonlisp
_cymew_ has quit [Ping timeout: 252 seconds]
akonai has quit [Ping timeout: 265 seconds]
n1to has quit [Remote host closed the connection]
akonai has joined #commonlisp
akonai has quit [Ping timeout: 268 seconds]
jmdaemon has quit [Ping timeout: 260 seconds]
Mandus has joined #commonlisp
akonai has joined #commonlisp
john-a-carroll has joined #commonlisp
<john-a-carroll> random-jellyfish: I was out earlier, so have only just seen your query about sbcl x86 code on an arm cpu. The previous responses were only partially correct. If you're talking about Darwin (=macOS) then it's likely your x86_64 binary will work fine on M1 and M2 Macs (and Rosetta 2 might run it almost as fast as a native build). I'm doing exactly
<john-a-carroll> this.
<john-a-carroll> The only issue I've encountered is the ThreadContextRegisterState error also reported at https://github.com/dotnet/runtime/issues/44897 although I haven't seen this error for a while. But please don't assume that your Darwin x86_64 binary will work - you'll need to test it
<ixelp> Support .NET on Apple Silicon with Rosetta 2 emulation · Issue #44897 · dotnet/runtime · GitHub
jmdaemon has joined #commonlisp
waleee has quit [Ping timeout: 260 seconds]
waleee has joined #commonlisp
MajorBiscuit has joined #commonlisp
jmdaemon has quit [Ping timeout: 252 seconds]
tyson2 has quit [Remote host closed the connection]
akonai has quit [Ping timeout: 252 seconds]
akoana has joined #commonlisp
<pjb> jackdaniel: the difference is obvious: https://termbin.com/0oapk
djuber has joined #commonlisp
akonai has joined #commonlisp
<pjb> funnily, in emacs :default-initarg is not handled, so the second expressions gives a slot unbound error.
jmdaemon has joined #commonlisp
aartaka has quit [Ping timeout: 260 seconds]
aartaka has joined #commonlisp
_cymew_ has joined #commonlisp
jeosol has joined #commonlisp
akonai has quit [Ping timeout: 260 seconds]
akonai has joined #commonlisp
akonai has quit [Ping timeout: 255 seconds]
akonai has joined #commonlisp
<NotThatRPG> Am I wrong, or is there no real standard for how docstrings should be formatted, even an informal one? Including whether they are to be line-broken?
<ixelp> Documentation Tips (GNU Emacs Lisp Reference Manual)
<NotThatRPG> djuber: Yes, there's that, but it is for Emacs Lisp. I have been using a fork of SB-TEXINFO for some systems, and I am thinking about how to extend it. In its original form, it does little markup. But I also want to keep the docstrings readable *without* processing.
<NotThatRPG> So one possibility: try to use something like Markdown that is relatively readable in source form, and then one would just use something like SB-TEXINFO to extract the docstrings into a good form for inclusion into a manual.
<NotThatRPG> The second possibility would involve using something that is less readable but more expressive, and rely on enhancing the `documentation` protocol to render it readable.
MajorBiscuit has quit [Ping timeout: 260 seconds]
nij- has left #commonlisp [Using Circe, the loveliest of all IRC clients]
MajorBiscuit has joined #commonlisp
akonai has quit [Ping timeout: 252 seconds]
aartaka has quit [Ping timeout: 272 seconds]
frgo_ has quit []
akonai has joined #commonlisp
tibfulv has quit [Remote host closed the connection]
tibfulv has joined #commonlisp
aartaka has joined #commonlisp
MajorBiscuit has quit [Ping timeout: 260 seconds]
MajorBiscuit has joined #commonlisp
cage has quit [Quit: rcirc on GNU Emacs 28.2]
rodicm has joined #commonlisp
akonai has quit [Ping timeout: 252 seconds]
akonai has joined #commonlisp
rodicm has quit [Quit: Leaving]
aartaka has quit [Ping timeout: 268 seconds]
NotThatRPG is now known as NotThatRPG_away
jolby has quit [Quit: Client closed]
anticomputer_ is now known as anticomputer
<pjb> NotThatRPG_away: the question is what is the destination of docstrings. We have this DOCUMENTATION function to retrieve them in the REPL and in programs. So one main viewing device for docstrings is the REPL. What formatting do you want to have in your REPL? (I would assume some simple ASCII text format justified on 80 columns).
<pjb> NotThatRPG_away: some people use the docstrings to generate some programmer documentation of packages. There are arguments against that (there's a difference of objective between a programmer/user documentation, and docstrings that may appear in the code and show in the REPL; you don't read them the same way, you don't need to learn the same thing from both).
_cymew_ has quit [Ping timeout: 252 seconds]
<pjb> NotThatRPG_away: however, when you use the docstrings to generate documentation, then you may want to have those docstrings formatted in a way that's easily integrable with the format used for this documentation. So some kind of (restricted) markup may be a good idea. Or just some kind of ASCII text stereotyped formatting.
Krystof has quit [Ping timeout: 260 seconds]
<pjb> I have my own formatting for docstrings, and I would use org-mode markup if I wanted more, and integrate them into documentation. Note that my simple text ASCII formatting is good enough to produce such documentation: http://informatimago.free.fr./i/develop/lisp/doc/com.informatimago.common-lisp.cesarum.html
<ixelp> COM.INFORMATIMAGO.COMMON-LISP.CESARUM
<pjb> ( note the <pre> blocs in the documentation pages ;-) )
<pjb> NotThatRPG_away: again, I would advise against heavy markup format in docstrings, since they're often printed out in the REPL, or displayed eg. by emacs in the minibuffer, or in tiptool views, so any extra markup would be bothering.
<pjb> (and be sure to use spaces and not tabs if your format has any indenting).
akonai has quit [Ping timeout: 246 seconds]
anticomputer has quit [Remote host closed the connection]
anticomputer has joined #commonlisp
akonai has joined #commonlisp
anticomputer has quit [Remote host closed the connection]
anticomputer has joined #commonlisp
MajorBiscuit has quit [Ping timeout: 252 seconds]
waleee has quit [Quit: WeeChat 3.7.1]
waleee has joined #commonlisp
akonai has quit [Ping timeout: 260 seconds]
varjag has quit [Ping timeout: 272 seconds]
MajorBiscuit has joined #commonlisp
jolby has joined #commonlisp
akonai has joined #commonlisp
MajorBiscuit has quit [Ping timeout: 260 seconds]
jolby has quit [Quit: Client closed]
akonai has quit [Ping timeout: 260 seconds]
anticomputer has quit [Quit: quit]
anticomputer has joined #commonlisp
jolby has joined #commonlisp
morganw has quit [Read error: Connection reset by peer]
john-a-carroll has quit [Ping timeout: 252 seconds]
akoana has quit [Quit: leaving]
azimut has quit [Ping timeout: 255 seconds]
azimut_ has joined #commonlisp
jolby has quit [Quit: Client closed]
akonai has joined #commonlisp