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/>
Gleefre has joined #commonlisp
akoana has quit [Quit: leaving]
tedwing has joined #commonlisp
X-Scale has joined #commonlisp
tedwing has quit [Quit: leaving]
dipper_ has joined #commonlisp
tyson2 has joined #commonlisp
triffid has quit [Remote host closed the connection]
triffid has joined #commonlisp
<bitblit1> Hello Everyone!
pjb has quit [Ping timeout: 252 seconds]
<bitblit1> I wanted to clarify (as I forgot) if creating generic functions with arguments of a specific class is a good idea if you know you aren't going to subclass the original class. Basically, if organizing functions by class by making them a method is a good idea
<bitblit1> <whereiseveryone> "For anyone interested this..." <- Woaaah thats super cool! I am thinking of switching to guix. Thanks a bunch.
aeth has quit [Ping timeout: 248 seconds]
<edwlan[m]> bitblit: the typical rule for generic functions is that you should either define the function or at least one of the classes you’re specializing on
<edwlan[m]> But there’s nothing wrong with defining your own generic function that only has methods for pre-existing classes
<bitblit1> edwlan: Thanks! Will do.
<whereiseveryone> bitblit1: cool
<bitblit1> whereiseveryone: Will the meeting be recorded? If so, where would I be able to watch it later if I couldn't attend the meeting?
notzmv has quit [Ping timeout: 248 seconds]
karlosz has quit [Ping timeout: 265 seconds]
occ has quit [Ping timeout: 255 seconds]
occ has joined #commonlisp
tyson2 has quit [Remote host closed the connection]
Heefoo has joined #commonlisp
azimut has quit [Ping timeout: 255 seconds]
Gleefre has quit [Remote host closed the connection]
<splittist> https://snipboard.io/mCKR6c.jpg On the right a simple pdf displayed with Adobe Acrobat Reader. On the left the same pdf rendered to a png with common lisp.
<edwlan[m]> What are you using to render it?
<splittist> edwlan[m]: pdfreader (which exists only on my laptop for the moment) with a vecto output device.
<beach> Nice!
<edwlan[m]> Cool, is it able to also extract data from PDFs?
<splittist> edwlan[m]: up to a point. It turns out to be tricky. https://snipboard.io/NoH4Eh.jpg
<splittist> beach: thanks!
<edwlan[m]> Yeah, that was my understanding
<edwlan[m]> I thought of writing a library to parse PDFs myself, but gave up when I looked at the spec
<splittist> slightly more lispy, and you can see where I'm cutting corners for the moment: https://snipboard.io/bVATOa.jpg
<edwlan[m]> I'm looking forward to being able to use this library
<edwlan[m]> It looks like you have some sort of protocol for handling the stream of pdf objects?
jonatack1 has quit [Read error: Connection reset by peer]
jonatack1 has joined #commonlisp
<splittist> edwlan[m]: all in flux for the moment
jonatack1 has quit [Read error: Connection reset by peer]
jonatack1 has joined #commonlisp
jonatack1 has quit [Ping timeout: 265 seconds]
jonatack1 has joined #commonlisp
shka has joined #commonlisp
jonatack1 has quit [Ping timeout: 255 seconds]
jonatack1 has joined #commonlisp
Heefoo has quit [Quit: Connection closed]
pvb has quit [Ping timeout: 250 seconds]
pvb has joined #commonlisp
<splittist> last one for now: https://snipboard.io/3QUVAO.jpg
rgherdt has joined #commonlisp
<edwlan[m]> Cool
Lumine has quit [Quit: bbl]
X-Scale has quit [Quit: Client closed]
worstname has joined #commonlisp
dcb has quit [Quit: MSN Messenger 3.8]
markb1 has quit [Ping timeout: 248 seconds]
igemnace has joined #commonlisp
pve has joined #commonlisp
<|3b|> is it possible in cffi to define extra names for a foreign struct type? (defctype new old) complains about needing (:struct old), and (:struct new) doesn't work in either case
markb1 has joined #commonlisp
poselyqualityles has quit [Ping timeout: 255 seconds]
<Shinmera> I... think so if you manually define type translation methods.
<Shinmera> I forget the details, but I did some weird stuff like that in com-on
<|3b|> sounds easier to just generate a copy of struct with new name then, since i'm generating the original definition already :/
pranavats has left #commonlisp [Error from remote client]
Brucio-61 has quit [Ping timeout: 260 seconds]
Brucio-61 has joined #commonlisp
scymtym has joined #commonlisp
random-nick has joined #commonlisp
pranavats has joined #commonlisp
cage has joined #commonlisp
Gleefre has joined #commonlisp
<pve> Hi, is there a standard way to change the name of a class? Like if I do (setf (find-class 'foo) (find-class 'bar)) and also want the name to change.
<jackdaniel> there are two names
<jackdaniel> first is the name that is used in the environment to address the class (like you mention above)
<ixelp> CLHS: Standard Generic Function (SETF CLASS-NAME)
NicknameJohn has joined #commonlisp
<jackdaniel> and there is a name that the class maintains itself (like hayley mentioned above)
<hayley> I wasn't expecting to have a writer for the name of a class, but I guess it can't hurt that much.
<jackdaniel> both have writers if we account for MOP
<pve> hayley: wow, thanks.. I just looked at the page for class-name and couldn't find anything :)
<jackdaniel> oh, there is a writer in standard too
anticomputer has quit [Remote host closed the connection]
anticomputer has joined #commonlisp
X-Scale has joined #commonlisp
Gleefre has quit [Remote host closed the connection]
Gleefre has joined #commonlisp
igemnace has quit [Remote host closed the connection]
pranavats has left #commonlisp [Disconnected: Hibernating too long]
igemnace has joined #commonlisp
pranavats has joined #commonlisp
zyni-moe has joined #commonlisp
zxcvz has joined #commonlisp
zxcvz has quit [Client Quit]
zyni-moe has quit [Client Quit]
pjb has joined #commonlisp
jonatack1 has quit [Quit: WeeChat 3.8]
marsia is now known as marisa
marisa has left #commonlisp [Leaving]
easye has joined #commonlisp
jonatack has joined #commonlisp
kenran has joined #commonlisp
kenran has quit [Remote host closed the connection]
karlosz has joined #commonlisp
Everything has joined #commonlisp
pranavats has left #commonlisp [Error from remote client]
kenran has joined #commonlisp
X-Scale has quit [Quit: Client closed]
tyson2 has joined #commonlisp
NicknameJohn has quit [Ping timeout: 276 seconds]
azimut has joined #commonlisp
kenran has quit [Remote host closed the connection]
Gleefre has quit [Remote host closed the connection]
morganw has joined #commonlisp
Gleefre has joined #commonlisp
pranavats has joined #commonlisp
dipper_ has quit [Ping timeout: 265 seconds]
kevingal has joined #commonlisp
kevingal_ has joined #commonlisp
Gleefre has quit [Ping timeout: 260 seconds]
dcb has joined #commonlisp
Catie has quit [Ping timeout: 246 seconds]
morganw has quit [Remote host closed the connection]
tyson2 has quit [Remote host closed the connection]
tyson2 has joined #commonlisp
zxcvz has joined #commonlisp
zxcvz has quit [Client Quit]
Gleefre has joined #commonlisp
psvensson has joined #commonlisp
psvensson is now known as repeter
kevingal_ has quit [Ping timeout: 252 seconds]
kevingal has quit [Ping timeout: 252 seconds]
kevingal has joined #commonlisp
kevingal_ has joined #commonlisp
Catie has joined #commonlisp
vassenn has joined #commonlisp
vassenn has quit [Read error: Connection reset by peer]
pfd has joined #commonlisp
morganw has joined #commonlisp
deadmarshal_ has quit [Ping timeout: 246 seconds]
tyson2 has quit [Remote host closed the connection]
dirtcastle_ has quit [Ping timeout: 260 seconds]
kenran has joined #commonlisp
zxcvz has joined #commonlisp
zxcvz has quit [Client Quit]
cage has quit [Quit: rcirc on GNU Emacs 28.2]
deadmarshal has joined #commonlisp
dirtcastle has joined #commonlisp
worstname has quit [Ping timeout: 250 seconds]
Gleefre has quit [Remote host closed the connection]
<NotThatRPG> If one compiles a file with a defmacro in it, and then loads the fasl, does that cause SBCL to raise a style-warning to say that you are redefining the macro?
<NotThatRPG> I'm seeing a bunch of unexpected redefinition style warnings in random-state that surprise me.
<NotThatRPG> That doesn't seem to be the explanation...
<NotThatRPG> Actually, I wonder if this could be related to using quickload with :silent nil and :verbose t. Could that be revealing warnings and style-warnings that would otherwise be simply quashed by the compiler?
<NotThatRPG> No, it's not quicklisp -- I see this with bog-standard ASDF, too.
tyson2 has joined #commonlisp
shka has quit [Ping timeout: 260 seconds]
Gleefre has joined #commonlisp
perrierjouet has quit [Ping timeout: 264 seconds]
perrierjouet has joined #commonlisp
kevingal has quit [Ping timeout: 250 seconds]
kevingal_ has quit [Ping timeout: 250 seconds]
<NotThatRPG> What I'm doing is trying to check for a clean build and I'm getting messages I don't expect https://pastebin.com/RJZ3PFzs
<ixelp> False positive STYLE-WARNINGS - Pastebin.com
makomo has joined #commonlisp
Everything has quit [Quit: leaving]
haoms has joined #commonlisp
kenran has quit [Remote host closed the connection]
<jackdaniel> NotThatRPG: this looks like a serious issue I sometimes spot (not a false positive)
<jackdaniel> consider (defun foo () (bar ...)) (defmacro bar ...) -- bar in this case is assumed to be a function when foo is defined
<NotThatRPG> @jackdaniel: I mean that the warnings seem to be false positives...
<jackdaniel> then when bar is defined as a macro, such style warning is emited
<jackdaniel> without seeing the code I can't confirm this though
<jackdaniel> in other words, this looks as if you were using macros before defining them (and that is really really bad)
<NotThatRPG> I looked at the files that are being loaded and I do not see the macros being *invoked* in those files, only being defined.
<jackdaniel> yes, but they could have been used /earlier/ (before they were defined)
tyson2 has quit [Read error: Connection reset by peer]
<NotThatRPG> (I did some careful checking)
<NotThatRPG> In this case they definitely were not.
<jackdaniel> if the function foo is defined in the file a.lisp and it calls to BAR that is not defined yet, then bar is assumed to be a function
<jackdaniel> (and the system takes note of that)
Gleefre has quit [Ping timeout: 260 seconds]
<jackdaniel> and when the bar is defined as a macro then the system complains with this very style warning
<NotThatRPG> So I wonder if SBCL is throwing out warnings that are *later* quashed by with-compilation-unit, but before they get quashed, I am picking them up.
<jackdaniel> as I've said I didn't see the code itself, just that symptoms ideally reflect this failcase
Filystyn has joined #commonlisp
<Filystyn> hello
<Filystyn> i need basic hint
<Filystyn> do we have clisp manual pages ?
<Filystyn> I downloaded something like clips hyperspec
<Filystyn> but ..
<Filystyn> duno how to enter it ;-)
<jackdaniel> minion: tell Filystyn about pcl
<minion> Filystyn: look at pcl: pcl-book: "Practical Common Lisp", an introduction to Common Lisp by Peter Seibel, available at http://www.gigamonkeys.com/book/ and in dead-tree form from Apress (as of 11 April 2005).
<ixelp> Practical Common Lisp
<Filystyn> im lookign at it
<edwlan[m]> The hyperspec is typically read by opening index.html
<NotThatRPG> @jackdaniel: For example, the warning in there about INCFMOD: it's defined in the file toolkit.lisp and only used in rc4.lisp and rc4.lisp is DEFINITELY after toolkit.lisp in a serial asdf system definition
<Filystyn> but I am at the moment at the very beginign
<Filystyn> and I am used to have some manual
<jackdaniel> generally the goto place to see the common lisp standard is so called "hyperspec" available here: http://www.lispworks.com/documentation/HyperSpec/Front/index.htm
<ixelp> Common Lisp HyperSpec (TM)
<jackdaniel> I'm presonally using l1sp.org to look up symbols
<NotThatRPG> @jackdaniel: I remember Fare saying something about SBCL throwing a bunch of these style warnings, collecting them up, and then later either squashing them or emitting them on exit from WITH-COMPILATION-UNIT.
<jackdaniel> NotThatRPG: I have not additional insight, only what I've said earlier
<jackdaniel> s/not/no/
<NotThatRPG> Fare did something like what I am describing in his WITH-DEFERRED-WARNINGS patch for ASDF.
<semz> there is also https://novaspec.org/cl/ now, which might be a bit easier to browse
<ixelp> Common Lisp Nova Spec
<jackdaniel> Filystyn: perhaps clisp has its own manual (it probably has!); that said sbcl is usually goto implementation for learing because it is better supported by libraries
haoms has left #commonlisp [#commonlisp]
<jackdaniel> so in addition to the standard (either via clhs or what semz linked), you may see sbcl manual http://sbcl.org/manual/index.html
<ixelp> SBCL 2.3.3 User Manual
<Filystyn> ok so hyperspec is set of docs
<jackdaniel> NotThatRPG: I have not encountered such warnings outside the scenario I've mentioned
<NotThatRPG> @jackdaniel: But I can't imagine how I could be grabbing up these warnings before SBCL could screen them, unless SBCL for some reason collects them and only later filters them....
<jackdaniel> I can imagine that if the macro is first defined in *.lisp file and then the definition is loaded from *.fasl file, since the source location changes, the warning could be signaled
<jackdaniel> but that's only speculation
<pjb> jackdaniel: compile-file should only have compilation-time side effects, and only in the compilation environment. Loading the generated fasl file later shouldn't collide, either because load-time and run-time side effects shouldn't collide with compilation-time side effects, or because the previous compilation environment is disjoint from the run-time environment.
<pjb> jackdaniel: of course, it all depends on the implementation, but it is expected that (load (compile-file "foo.lisp")) should not signal such errors.
jeffrey has joined #commonlisp
<jackdaniel> makes sense; either way (as noted) I've only seen such style warning if the macro was used before it was defined
* jackdaniel goes to sleep, good night \o
makomo has quit [Quit: WeeChat 3.6]
<Filystyn> quick question on the end of say
<Filystyn> when i load lisp compiles the file and than loads the code
<Filystyn> and when I compile-file the loading process is faste rbecause the compilation is by then done
<Filystyn> jap ?
<Filystyn> it's funny thing you actualy compile soemthing in a scripting lang
<edwlan[m]> Python compiles all the code you write too
<Filystyn> O.o
<edwlan[m]> But, Common Lisp isn't a "scripting lang", if that term means anything
<Filystyn> ok man
<Filystyn> i got it
<Filystyn> I know only C and shell a bit not a big programmer ;-)
<edwlan[m]> That was a bit aggressive, all I meant is that whether you implement a language with a compiler or an interpreter is an implementation decision, not a feature of a language
<edwlan[m]> I didn't know this until I learned Common Lisp, though
<Filystyn> you mean I was aggressive ???
<edwlan[m]> No, the way I phrased it
<Filystyn> oh
<Filystyn> nah man
<Filystyn> btw why in repl we have canflestick ?
<Filystyn> candlestick asci art*
<ixelp> Appendix A. Frequently Asked Questions (With Answers) about CLISP
<pjb> edwlan[m]: CL has scripting aspect. If you define scripting as having program chunks modify the semantics of the rest of the script.
<pjb> edwlan[m]: Note however, that this works only partially when you compile the program.
<pjb> But it's in full effect when you load a lisp source (aka :execute situation).
<pjb> Most other languages have a semantic that is 100% hardwired and defined by having a compilation phase. Which is not the case of scripting languages, such as shell, perl, ruby, lisp, etc.
<pjb> edwlan[m]: that said, when you use things like cl-launch, which compiles "script", you lose this scripting aspect. Which is the reason why I don't use cl-launch, but instead compile all my "scripts" into a single lisp image, and dispatch on argv[0].
tyson2 has joined #commonlisp
jeffrey has quit [Ping timeout: 248 seconds]
<jcowan> There exist C repls which provide (IIUC) what you are calling scripting semantics for C.
Filystyn has quit [Quit: leaving]
worstname has joined #commonlisp
Gleefre has joined #commonlisp
worstname has quit [Remote host closed the connection]
agent1011001 has joined #commonlisp
rgherdt has quit [Remote host closed the connection]
NicknameJohn has joined #commonlisp
pve has quit [Quit: leaving]
jon_atack has joined #commonlisp
jonatack has quit [Ping timeout: 265 seconds]
occ has quit [Ping timeout: 276 seconds]
flip214 has quit [Read error: Connection reset by peer]
morganw has quit [Remote host closed the connection]
flip214 has joined #commonlisp
pjb has quit [Ping timeout: 248 seconds]
Devon has joined #commonlisp
anticomputer has quit [Quit: quit]
anticomputer has joined #commonlisp
Lord_of_Life_ has joined #commonlisp
karlosz has quit [Quit: karlosz]
Lord_of_Life has quit [Ping timeout: 265 seconds]
Lord_of_Life_ is now known as Lord_of_Life