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>
taiju has quit [Ping timeout: 240 seconds]
taiju has joined #commonlisp
lisp123 has joined #commonlisp
karlosz has joined #commonlisp
azimut has quit [Quit: ZNC - https://znc.in]
pillton has quit [Quit: ERC (IRC client for Emacs 27.2)]
jeosol has joined #commonlisp
Lycurgus has joined #commonlisp
azimut has joined #commonlisp
frgo has joined #commonlisp
Lord_of_Life has quit [Ping timeout: 250 seconds]
PinealGlandOptic has quit [Quit: leaving]
Lord_of_Life has joined #commonlisp
lisp123 has quit [Ping timeout: 240 seconds]
karlosz has quit [Quit: karlosz]
nature_ has quit [Ping timeout: 240 seconds]
dlowe has quit [Remote host closed the connection]
silasfox has quit [Ping timeout: 248 seconds]
kuler has joined #commonlisp
silasfox has joined #commonlisp
waleee has quit [Ping timeout: 250 seconds]
attila_lendvai has quit [Ping timeout: 248 seconds]
akoana has joined #commonlisp
pillton has joined #commonlisp
prxq has quit [Ping timeout: 240 seconds]
prxq has joined #commonlisp
Oladon has joined #commonlisp
<beach> Good morning everyone!
taiju has quit [Ping timeout: 240 seconds]
taiju has joined #commonlisp
lisp123 has joined #commonlisp
<lotuseater> Good morning beach.
lisp123 has quit [Ping timeout: 240 seconds]
Josh_2 has quit [Remote host closed the connection]
<dieggsy> good merevenin
Bike has quit [Quit: Lost terminal]
semz has quit [Ping timeout: 250 seconds]
lisp123 has joined #commonlisp
lisp123 has quit [Client Quit]
recordgroovy has left #commonlisp [#commonlisp]
semz has joined #commonlisp
ln43 has joined #commonlisp
<ln43> Hi all, whic is the preferred way to read epub documents inside Emacs ?
<ln43> which
silasfox has quit [Ping timeout: 240 seconds]
taiju has quit [Ping timeout: 250 seconds]
taiju has joined #commonlisp
<beach> ln43: Are epub documents for Common Lisp?
<ln43> yes i was trying to read a book about CL
<ln43> and there is inside the source dir an epub documents, anyway it's not a problem: i should read from the web
<ln43> using the browser
<ln43> basically i'm using Portacle but i don't have emacs built with all the necessary xml support
<ln43> because i was trying to render the page, but nothing
lisp123 has joined #commonlisp
mfiano has quit [Ping timeout: 240 seconds]
Oladon has quit [Quit: Leaving.]
silasfox has joined #commonlisp
etiago- has joined #commonlisp
etiago has quit [Ping timeout: 250 seconds]
akoana has quit [Quit: leaving]
mfiano has joined #commonlisp
silasfox has quit [Ping timeout: 250 seconds]
<dieggsy> ln43: consider the nov.el (the nov package)
<ln43> yes but i tryied with melpa and maybe a dependency was not downloaded because of was required an old version
<ln43> older
<dieggsy> what
<ln43> esxml-20171129 not found
silasfox has joined #commonlisp
<dieggsy> ln43: dunno then. try package-refresh-contents?
<ln43> ok, i'm trying
<ln43> wow, many thanks!
khrbt has quit [Ping timeout: 240 seconds]
silasfox has quit [Ping timeout: 252 seconds]
silasfox has joined #commonlisp
Lycurgus has quit [Quit: Exeunt]
shka has joined #commonlisp
Cymew has joined #commonlisp
cranium has joined #commonlisp
igemnace has quit [Ping timeout: 240 seconds]
igemnace has joined #commonlisp
vats has quit [Remote host closed the connection]
silasfox has quit [Ping timeout: 240 seconds]
silasfox has joined #commonlisp
silasfox has quit [Client Quit]
gaqwas has joined #commonlisp
pillton has quit [Quit: ERC (IRC client for Emacs 27.2)]
ln43 has quit [Quit: Connection closed]
Skyfire has quit [Ping timeout: 250 seconds]
Skyfire has joined #commonlisp
pve has joined #commonlisp
tophullyte has quit [Ping timeout: 248 seconds]
amb007 has quit [Ping timeout: 248 seconds]
amb007 has joined #commonlisp
psycomic has joined #commonlisp
<beach> Generic functions are great not just because of what they are typically used for, but also because one can separate the definition of the function from its implementation, so that one can collect DEFGENERIC forms in a place where the protocol for a module is defined.
<beach> Is there an analogous operator that can be used for ordinary functions? I am thinking maybe proclaiming its FTYPE or something like that.
<beach> If not, and suppose we have fast generic dispatch, would it sometimes be a good idea to use a generic function where an ordinary function would work?
<hayley> I think I've seen something like (defun name (lambda-list ...) (error "Should be replaced by now")) which is later redefined used in some bootstrapping scheme.
<beach> Yeah, that will work too. But it's a bit unappealing.
<hayley> Sure.
<beach> Using a generic function in place of an ordinary function clearly violates the general rule that one should use the most specific construct that will have the desired effect.
gaqwas has quit [Ping timeout: 248 seconds]
contrapunctus has quit [Ping timeout: 240 seconds]
contrapunctus has joined #commonlisp
hendursa1 has joined #commonlisp
hendursaga has quit [Ping timeout: 276 seconds]
contrapunctus has left #commonlisp [#commonlisp]
<pl> beach: I could see it hacked together with MOP - someone made a MOP-based package that precomputed dispatch in exchange for less runtime flexibility, but some of the mechanism could be reused
* pl meanwhile wishes *features* conditionals weren't so popular in ASDF
<kakuhen> #-(or everything you do not have) (uiop:not-implemented-error "some stuff i want")
<pl> Trying to look into integrating lisp in bazel without SBCL-specificness of existing rules_lisp stuff or manually writing build files
<beach> pl: I know how to make generic dispatch it efficient. I was wondering whether 1. There is a thing that can be done for ordinary functions, or 2. It would be acceptable to use a generic function instead?
<beach> s/it//
<pl> beach: now that I think of it, wouldn't a plain macro modifying the symbol slot be enough?
<beach> Maybe so. That's what the temporary DEFUN does, no?
<beach> But then it is likely that I get a warning when the function is (re-)defined.
<saturn2> you could use a macro that ignores its input and does nothing
rain3 has joined #commonlisp
<beach> I also want this construct to be used to verify calls and to avoid compile-time warnings when the function is called before the real one is defined, just like the pair DEFGENERIC/DEFMETHOD works.
<beach> Otherwise, I could just put in a comment.
<beach> That's why I was thinking of proclaiming an FTYPE.
<beach> But that might not do the trick. And the effect may be implementation specific.
amb007 has quit [Ping timeout: 248 seconds]
amb007 has joined #commonlisp
<pjb> beach: if you want to do that for normal functions, you can do it with (declaim (ftype (function (type-arg-1 … type-arg-n) type-result) fun1 fun2 ..)
<pjb> )
<pjb> beach: oh, that's what you mentionned eventuall :-)
<beach> Yes, thank you. I think I could have figured that out. I was wondering whether it would have the desired effect, if the effect is standardized, whether there are any downsides to it, etc.
<pjb> Well it has the effect that the compiler won't complain about "undefined" functions if it's not defined in the same compilation unit and not loaded before compiling the current unit.
<pjb> But granted, it may be dangerous as any use of type declarations in CL: the compiler may assume you are guaranteeing the types, and skipping checks.
<beach> Good point.
<pjb> So perhaps we should use a custom declaration or macro.
<beach> Maybe so. Thanks!
<pjb> some package use macros definterface defimplementation, that validat that all the functions in definterface are implemented eventually (portabilityh packages using different backends often do that).
<pjb> eg. swank, quicklisp.
contrapunctus has joined #commonlisp
<beach> So let me think about the aspects I like about the DEFGENERIC/DEFMETHOD pair. First, with DEFGENERIC, the function exists, so the compiler can check calls to it. Second, the DEFMETHOD does not redefine the function, and the lambda list of the DEFMETHOD form must be congruent with that of the DEFGENERIC form.
<beach> I guess a type proclamation with T being the only type might work then.
<pjb> Hey! swank implements a body that will call an implementaiton provided or default implementation obtained from the symbol-plist of the functioname (defimplementation just store the new function in that symbol-plist), while quicklisp uses defgeneric/defmethod.
<pjb> beach: yes. It's the less risky.
<pjb> but if you want to be more precise/informative, using custom declarations (and have some tooling to process them) can be a good solution too.
<beach> Lots of options to contemplate. Thanks.
<pjb> (declaim (declaration decfun)) (declaim (decfun foo ((a integer) (b string)) (values string vector) (signals arithmetic-error)))
<beach> Interesting idea.
<pjb> But declarations are too limited: they cannot have compilation-time effect if the compiler doesn't understand them.
<beach> Absolutely.
<pjb> So it's better to define a macro (it could still expand to the custom declaration, in addition to what we need to do for the compiler).
asarch has joined #commonlisp
pranavats has quit [Ping timeout: 252 seconds]
Xach has quit [Ping timeout: 252 seconds]
flip214 has quit [Ping timeout: 252 seconds]
Xach has joined #commonlisp
flip214 has joined #commonlisp
attila_lendvai has joined #commonlisp
asarch has quit [Quit: Leaving]
selwyn has joined #commonlisp
cosimone has joined #commonlisp
selwyn has quit [Remote host closed the connection]
selwyn has joined #commonlisp
ggoes has quit [Quit: ZNC 1.7.2+deb3 - https://znc.in]
amb007 has quit [Ping timeout: 240 seconds]
ggoes has joined #commonlisp
amb007 has joined #commonlisp
cage has joined #commonlisp
<beach> Is there a (preferably maintained) version of the Common Lisp pretty printer available online?
<beach> I could go copy the code from some existing Common Lisp implementation, but if it exists in the form of a portable library, that would be idea.
<beach> *ideal
Cymew has quit [Ping timeout: 240 seconds]
<beach> clhs 22.2.1.1
<specbot> Dynamic Control of the Arrangement of Output: http://www.lispworks.com/reference/HyperSpec/Body/22_baa.htm
<beach> Should paragraph 6 be "The logical block immediately containing a conditional newline..." rather than "The section immediately containing a conditional newline..."?
<beach> No, I guess not. Forget what I said.
<_death> beach: I guess the prototypical implementation is https://www.cs.cmu.edu/Groups/AI/lang/lisp/code/io/xp/0.html
<beach> Thank you!
hendursa1 has quit [Remote host closed the connection]
hendursa1 has joined #commonlisp
frgo has quit [Remote host closed the connection]
frgo has joined #commonlisp
kakuhen has quit [Quit: Leaving...]
ln43 has joined #commonlisp
contrapunctus has left #commonlisp [#commonlisp]
tyson2 has joined #commonlisp
contrapunctus has joined #commonlisp
makomo has joined #commonlisp
random-nick has joined #commonlisp
igemnace has quit [Remote host closed the connection]
cosimone has quit [Ping timeout: 240 seconds]
CrashTestDummy3 has joined #commonlisp
CrashTestDummy2 has quit [Ping timeout: 250 seconds]
dlowe has joined #commonlisp
lisp123_ has joined #commonlisp
lisp123 has quit [Ping timeout: 252 seconds]
cosimone has joined #commonlisp
dlowe has quit [Remote host closed the connection]
dlowe has joined #commonlisp
cosimone has quit [Ping timeout: 240 seconds]
amb007 has quit [Read error: Connection reset by peer]
contrapunctus has left #commonlisp [#commonlisp]
amb007 has joined #commonlisp
lisp123_ has quit [Ping timeout: 252 seconds]
CrashTestDummy2 has joined #commonlisp
CrashTestDummy3 has quit [Ping timeout: 252 seconds]
<beach> That XP code looks like something the cat dragged in.
<beach> Not only does it not follow widespread conventions; it doesn't even follow its own conventions.
selwyn has quit [Read error: Connection reset by peer]
<beach> Oh, well. I guess we have another library to create as part of the SICL project.
<beach> *sigh*
<splittist> The prettier pretty printer
<beach> I guess so, yes.
<hayley> (write pretty-printer :pretty :t)
<hayley> (Or rather :pretty t.)
<beach> I wish.
<hayley> I confused myself with the time I tried :pretty :very and phoe tested the very pretty printer on paper: <https://i.redd.it/zqxcs1anzqv41.jpg>
cosimone has joined #commonlisp
<splittist> Should be pretty and witty and bright.
Bike has joined #commonlisp
lisp123 has joined #commonlisp
derelict has quit [Quit: WeeChat 3.2]
selwyn has joined #commonlisp
Cymew has joined #commonlisp
ln43 has quit [Quit: Connection closed]
nature has joined #commonlisp
tyson2 has quit [Quit: ERC (IRC client for Emacs 27.2)]
contrapunctus has joined #commonlisp
Oladon has joined #commonlisp
Cymew has quit [Ping timeout: 240 seconds]
srhm has joined #commonlisp
srhm has quit [Read error: Connection reset by peer]
srhm has joined #commonlisp
amb007 has quit [Ping timeout: 240 seconds]
amb007 has joined #commonlisp
srhm has quit [Read error: Connection reset by peer]
derelict has joined #commonlisp
srhm has joined #commonlisp
notzmv has quit [Ping timeout: 240 seconds]
Devon has quit [Ping timeout: 240 seconds]
santiagopim has joined #commonlisp
srhm has quit [Read error: Connection reset by peer]
srhm has joined #commonlisp
srhm has quit [Read error: Connection reset by peer]
srhm has joined #commonlisp
frgo_ has joined #commonlisp
frgo has quit [Read error: Connection reset by peer]
srhm has quit [Read error: Connection reset by peer]
srhm has joined #commonlisp
notzmv has joined #commonlisp
Oladon has quit [Quit: Leaving.]
peterhil has quit [Ping timeout: 240 seconds]
srhm has quit [Read error: Connection reset by peer]
srhm has joined #commonlisp
notzmv has quit [Ping timeout: 240 seconds]
cranium has quit [Quit: Leaving]
notzmv has joined #commonlisp
srhm has quit [Read error: Connection reset by peer]
srhm has joined #commonlisp
hendursa1 has quit [Quit: hendursa1]
hendursaga has joined #commonlisp
srhm has quit [Read error: Connection reset by peer]
srhm has joined #commonlisp
cosimone has quit [Ping timeout: 250 seconds]
doyougnu has joined #commonlisp
srhm has quit [Read error: Connection reset by peer]
srhm has joined #commonlisp
<jcowan> pjb: TIL that the different final letters of Dupond and Dupont indicate their different mostache styles: D for droite, T for troussée.
srhm has quit [Read error: Connection reset by peer]
lisp123_ has joined #commonlisp
contrapunctus has left #commonlisp [#commonlisp]
lisp123 has quit [Ping timeout: 250 seconds]
lisp123_ has quit [Remote host closed the connection]
waleee has joined #commonlisp
contrapunctus has joined #commonlisp
lisp123 has joined #commonlisp
Skyfire has quit [Quit: WeeChat 3.2]
hendursaga has quit [Remote host closed the connection]
lisp123 has quit [Ping timeout: 250 seconds]
hendursaga has joined #commonlisp
lisp123 has joined #commonlisp
tyson2 has joined #commonlisp
lisp123_ has joined #commonlisp
lisp123 has quit [Ping timeout: 252 seconds]
attila_lendvai_ has joined #commonlisp
<lisp123_> Anybody read 'Lisp Style & Design'?
contrapunctus has left #commonlisp [#commonlisp]
<pjb> jcowan: :-} :-E ;-)
attila_lendvai_ has quit [Remote host closed the connection]
attila_lendvai_ has joined #commonlisp
<edgar-rft> lisp123_: no, they typed it blindly and no-one ever proof-read it
<lisp123_> edgar-rft: I see. I saw some positive reviews (but its only a sample of 2 or 3 so doesn't say much), but there isn't really a copy available online to check
<beach> It was apparently publish before the standard.
<lisp123_> If anyone has read that (nice cover art!)
shka has quit [Quit: Konversation terminated!]
shka has joined #commonlisp
okflo has quit [Quit: WeeChat 3.2]
okflo has joined #commonlisp
contrapunctus has joined #commonlisp
attila_lendvai_ has quit [Quit: Leaving]
<edgar-rft> lisp123_: are you talking about this? (better ignore the price) -> https://www.amazon.com/LISP-Design-Molly-M-Miller/dp/1555580440
<lisp123_> edgar-rft: Yeah that one
<edgar-rft> lisp123_: I never read it, the most useful thing I found is a comp-lang-lisp discussion about the contents -> https://groups.google.com/g/comp.lang.lisp/c/3aFx2ALHD50/m/Oz48yvcDVEAJ
<lisp123_> edgar-rft: THanks - I saw that too
<edgar-rft> ...but as beach said, the book was published *before* the official Common Lisp Standard came out
<lisp123_> Yeah I think I will give it a pass
<edgar-rft> I would be interested reading it, but definitely *not* for 900 dollar.
<lisp123_> There's a copy for 170 GBP on Amazon.co.uk
<lisp123_> I think at around 50 GBP, I would consider it more
<lisp123_> Very rare book
tyson2 has quit [Ping timeout: 252 seconds]
contrapunctus has left #commonlisp [#commonlisp]
<edgar-rft> no wonder it's rare, for *that* price nobody will buy it
<lisp123_> I assume it wasn't that special
<lisp123_> Since it hasn't been talked about much. Probably just something useful 'back in the day'
okflo has quit [Quit: WeeChat 3.2]
okflo has joined #commonlisp
<edgar-rft> the book uses Lucid CL according to -> http://www.ai.sri.com/~delacaze/alu-site/alu/table/books.htm#miller
<lisp123_> Yes it does
<lisp123_> It was written by their team I believe
elf_fortrez has joined #commonlisp
<edgar-rft> does Lucid CL even exist amymore? never heard of it but might be known under a different name today
<edgar-rft> might be one of the myriads of ecl predecessors :-)
<pjb> Haven't they be merged with lispworks?
gaqwas has joined #commonlisp
pjb has quit [Ping timeout: 250 seconds]
rain3 has quit [Remote host closed the connection]
rain3 has joined #commonlisp
shka has quit [Ping timeout: 252 seconds]
pjb has joined #commonlisp
shka has joined #commonlisp
Alfr has quit [Ping timeout: 252 seconds]
shka has quit [Quit: Konversation terminated!]
Demosthenex has quit [Ping timeout: 240 seconds]
tophullyte has joined #commonlisp
karlosz has joined #commonlisp
notzmv has quit [Ping timeout: 240 seconds]
Skyfire has joined #commonlisp
shka has joined #commonlisp
Demosthenex has joined #commonlisp
selwyn has quit [Quit: Leaving]
<kagevf> lisp123_: I just read the mention of "Miller and Benson’s Lisp Style and Design" in _On Lisp_ last night!
Oladon has joined #commonlisp
contrapunctus has joined #commonlisp
doyougnu has quit [Remote host closed the connection]
doyougnu has joined #commonlisp
<jcowan> USD 200 at bookfinder.com
<jcowan> Lucid CL is owned by Lispworks, and they support existing users, but no new licenses are being sold.
Alfr has joined #commonlisp
<lisp123_> kagevf: Oh cool, let me look into that
tophullyte has quit [Ping timeout: 252 seconds]
djuber has joined #commonlisp
joe_mad has joined #commonlisp
tfeb has joined #commonlisp
karlosz has quit [Quit: karlosz]
nature has quit [Ping timeout: 240 seconds]
contrapunctus has left #commonlisp [#commonlisp]
CrashTestDummy3 has joined #commonlisp
CrashTestDummy3 has quit [Read error: Connection reset by peer]
CrashTestDummy3 has joined #commonlisp
contrapunctus has joined #commonlisp
selwyn has joined #commonlisp
tfeb has quit [Quit: died]
CrashTestDummy2 has quit [Ping timeout: 252 seconds]
kakuhen has joined #commonlisp
rain3 has quit [Ping timeout: 240 seconds]
attila_lendvai has quit [Quit: Leaving]
rdrg109 has quit [Ping timeout: 240 seconds]
joe_mad has left #commonlisp [ERC (IRC client for Emacs 27.1)]
rdrg109 has joined #commonlisp
elf_fortrez has quit [Quit: Client closed]
notzmv has joined #commonlisp
attila_lendvai has joined #commonlisp
attila_lendvai has quit [Remote host closed the connection]
attila_lendvai has joined #commonlisp
cage has quit [Quit: rcirc on GNU Emacs 27.1]
recordgroovy has joined #commonlisp
yitzi has joined #commonlisp
selwyn has quit [Read error: Connection reset by peer]
shka has quit [Ping timeout: 248 seconds]
cosimone has joined #commonlisp
nature_ has joined #commonlisp
Steeve has joined #commonlisp
lisp123_ has quit [Quit: Leaving...]
yitzi has quit [Quit: Leaving]
retropikzel has joined #commonlisp
elf_fortrez has joined #commonlisp
retropikzel has quit [Quit: Leaving]
psycomic has quit [Ping timeout: 250 seconds]
okflo has quit [Quit: WeeChat 3.2]
<kagevf> lisp123_: it's at the top of p. 137
<lotuseater> I see it. :)
pve has quit [Quit: leaving]
Krystof has quit [Ping timeout: 252 seconds]
akoana has joined #commonlisp
micro has quit [Ping timeout: 268 seconds]
cosimone has quit [Remote host closed the connection]
micro has joined #commonlisp
cosimone has joined #commonlisp
nature_ has quit [Remote host closed the connection]
frgo_ has quit [Remote host closed the connection]
frgo has joined #commonlisp
<recordgroovy> It looks like cl-unix-sockets doesn't support sending file descriptors using ancillary data. Is there a unix socket library that does?
<pl> iolib might have had something?
<recordgroovy> Yep, it looks like iolib has that
<recordgroovy> sockets:receive-file-descriptor
cosimone has quit [Remote host closed the connection]
cosimone has joined #commonlisp
doyougnu has quit [Ping timeout: 240 seconds]
amb007 has quit [Ping timeout: 248 seconds]
amb007 has joined #commonlisp
tyson2 has joined #commonlisp
cosimone has quit [Ping timeout: 240 seconds]
random-nick has quit [Ping timeout: 248 seconds]
Steeve has quit [Quit: end]
Alfr has quit [Quit: Leaving]
khrbt has joined #commonlisp