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/>
sweatshirt has joined #commonlisp
<sweatshirt> i feel like im making some headway on understanding common lisp; just built a simple login system where it loops through a list of list to see if key info matches
bitmapper has quit []
occ has joined #commonlisp
sweatshirt has quit [Remote host closed the connection]
triffid has joined #commonlisp
triffid has quit [Ping timeout: 255 seconds]
triffid has joined #commonlisp
<copec> TiL this existed https://youtu.be/H-yuZ2pejGU
<ixelp> Casio AI-1000 Pocket Lisp Computer from 1989 - YouTube
random-nick has quit [Ping timeout: 255 seconds]
Lord_of_Life_ has joined #commonlisp
Lord_of_Life has quit [Ping timeout: 268 seconds]
Lord_of_Life_ is now known as Lord_of_Life
waleee has quit [Ping timeout: 246 seconds]
eddof13 has joined #commonlisp
eddof13 has quit [Client Quit]
<White_Flame> copec: neat
bilegeek has joined #commonlisp
prokhor has quit [Ping timeout: 246 seconds]
prokhor has joined #commonlisp
occ has quit [Ping timeout: 255 seconds]
occ has joined #commonlisp
Everything has quit [Quit: leaving]
occ has quit [Ping timeout: 255 seconds]
occ has joined #commonlisp
azimut has quit [Ping timeout: 255 seconds]
sweatshirt has joined #commonlisp
son0p has quit [Ping timeout: 255 seconds]
<sweatshirt>
<sweatshirt> yo
<beach> Hello sweatshirt. Are you new here? I don't recognize your nick.
<sweatshirt> i am new here
<sweatshirt> and to common lisp!
<beach> Great! Welcome!
<sweatshirt> Thank you!
<beach> sweatshirt: You might want to know about #clschool. This channels is not really for newbie questions, although they are tolerated to some extent.
<sweatshirt> i see; thank you for letting me know -- what is this channel for?
<beach> A variety of things. We discuss the standard, implementation techniques, applications, libraries.
<sweatshirt> gotcha
ttree has quit [Ping timeout: 246 seconds]
<edgar-rft> sweatshirt: today it's quiet here but soemtimes there are in-depth technical discussions where newbie questions easily get lost, that's why #clschool was created where we always have time to explain things in detail
<sweatshirt> i see, awesome; i just joined there! Thanks for the heads up!
bilegeek_ has joined #commonlisp
bilegeek has quit [Ping timeout: 255 seconds]
akoana has joined #commonlisp
shka has joined #commonlisp
masinter has quit [Ping timeout: 246 seconds]
igemnace has joined #commonlisp
rgherdt has joined #commonlisp
frgo has quit [Ping timeout: 246 seconds]
bilegeek_ has quit [Quit: Leaving]
attila_lendvai has joined #commonlisp
son0p has joined #commonlisp
aeth has quit [Quit: Reconnecting]
aeth has joined #commonlisp
pve has joined #commonlisp
pranavats has left #commonlisp [Error from remote client]
pranavats has joined #commonlisp
sweatshirt has quit [Ping timeout: 260 seconds]
silasfox has joined #commonlisp
MajorBiscuit has joined #commonlisp
LW has joined #commonlisp
BytesAndCoffee|a has joined #commonlisp
BytesAndCoffee has quit [Ping timeout: 252 seconds]
pranavats has left #commonlisp [Error from remote client]
Cymew has joined #commonlisp
floren has joined #commonlisp
jfloren has quit [Ping timeout: 260 seconds]
Brucio-61 has quit [Ping timeout: 260 seconds]
scymtym has quit [Ping timeout: 246 seconds]
attila_lendvai has quit [Ping timeout: 248 seconds]
pranavats has joined #commonlisp
attila_lendvai has joined #commonlisp
Brucio-61 has joined #commonlisp
attila_lendvai has quit [Ping timeout: 264 seconds]
occ has quit [Ping timeout: 255 seconds]
attila_lendvai has joined #commonlisp
semarie has quit [Remote host closed the connection]
semarie has joined #commonlisp
ec has quit [Remote host closed the connection]
ec has joined #commonlisp
pranavats has left #commonlisp [Disconnected: Hibernating too long]
ns12 has quit [Quit: bye]
ns12 has joined #commonlisp
quoosp has joined #commonlisp
Cymew has quit [Ping timeout: 268 seconds]
_cymew_ has joined #commonlisp
pranavats has joined #commonlisp
KaitoDaumoto has joined #commonlisp
random-nick has joined #commonlisp
pranavats has left #commonlisp [Error from remote client]
glaucon has joined #commonlisp
gxt_ has quit [Ping timeout: 255 seconds]
gxt_ has joined #commonlisp
scymtym has joined #commonlisp
pawa2 has quit [Ping timeout: 246 seconds]
aartaka has joined #commonlisp
jmdaemon has quit [Ping timeout: 255 seconds]
azimut has joined #commonlisp
aartaka has quit [Ping timeout: 248 seconds]
aartaka has joined #commonlisp
avocadoist has quit [Ping timeout: 255 seconds]
theesm has joined #commonlisp
kami_ has joined #commonlisp
<kami_> Good morning
<beach> Hello kami_.
pranavats has joined #commonlisp
perrierjouet has quit [Quit: WeeChat 3.8]
pranavats has left #commonlisp [Error from remote client]
perrierjouet has joined #commonlisp
rgherdt has quit [Remote host closed the connection]
pranavats has joined #commonlisp
lambdart has joined #commonlisp
zxcvz has joined #commonlisp
zxcvz has quit [Client Quit]
masinter has joined #commonlisp
pranavats has left #commonlisp [Disconnected: Hibernating too long]
szkl has joined #commonlisp
aartaka has quit [Ping timeout: 246 seconds]
pranavats has joined #commonlisp
<jcowan> I have been trying to discover known use cases for dotted lists, pretty much without success except for the case of pattern-matching against lists of arbitrary length. Can anyone think of other applications?
tibfulv has quit [Remote host closed the connection]
<Bike> like, not including single conses?
<jackdaniel> alists with car being a list?
<jackdaniel> ((op1 op2 op3) . handler)
tibfulv has joined #commonlisp
<jcowan> Bike: yes
<jcowan> that is, not including invidual conses considered as 2-element structures/records.
<jcowan> an alist is a (normal) list of such conses, which can of course contain lists.
<_death> well, I guess one use that comes to mind is that you can have the last atom be a unique object, say a gensym, so that you can later on substitute something else for it without worrying about "user-supplied" objects
<_death> (you'd do that using SUBLIS)
<jcowan> I don't understand, sorry
Cymew has joined #commonlisp
jeosol has joined #commonlisp
<jcowan> An application I do know about is implementing lazy lists by putting a thunk in the tail which, when invoked, provides a "next value" to be spliced into the list.
avocadoist has joined #commonlisp
Cymew has quit [Ping timeout: 255 seconds]
<_death> you have a tree structure serving as a kind of template (f (+ . x) (+ (* 2 . x) 1)) and can later (sublis '((x . (a b))) template)
<_death> also destructuring patterns sometimes contain dotted lists
tyson2 has joined #commonlisp
<_death> (but I now see you mentioned that)
<scymtym> (defpackage … (:shadow . #1=(foo bar baz)) (:export fez . #1#))
<_death> hmm, no dotted list there :)
<scymtym> right. i was thinking of consing dot
LW has quit [Quit: WeeChat 3.6]
<_death> an easy way to find out more use cases would be to scan existing code for such lists.. easy using eclector (and my formgrep hack that uses it)
<_death> (that may not find out use cases that build such lists at runtime..)
waleee has joined #commonlisp
igemnace has quit [Remote host closed the connection]
<jcowan> One of the ANS changes was to allow keywords in function definitions not to be in the keyword package. Does anyone know the rationale for this?
<jcowan> It seems obfuscatory.
<Bike> didn't you ask this before?
<jcowan> If so, I must have forgotten the answer.
<jcowan> (or lack of answer, as the case may be)
<Bike> hrm, well i see you asking other stuff about keywords but not this
<Bike> it's occasionally useful to have private parameters. for example you can use them as initargs for objects so your own code can pass stuff to make-instance that external code should not
Lycurgus has joined #commonlisp
<jcowan> Fair enough. So you'd want to allow uninterned symbols, and perhaps they thought it was just simpler to allow any symbols whatsoever.
<Bike> or just symbols in a package
<jcowan> They aren't as private, though, since there are no private packages.
<Bike> for a concrete example, the clos implementation in clasp has a clos::leaf-method-p initarg for methods. using a symbol from an internal package is an indicator to users not to screw with it, and also means that they can pick whatever keyword initargs they want for their own subclasses of standard-method without worrying about collisions
<jcowan> Thanks
<jcowan> That is very clear.
<Bike> you are welcome
<jcowan> Come to think of it, it can't actually be a gensym unless you wrap your defun in a call to eval: (eval `(defun foo (x y &keys ,private-keyword) <body>))
baka has quit [Remote host closed the connection]
<jcowan> Which in turn would have to be wrapped in eval-when.
<jcowan> So yes, an internal package is the Right Thing.
pranavats has left #commonlisp [Error from remote client]
<Bike> you could use #. #= and ##, i guess, but that would be sort of terrible in its own way
<Bike> (defun foo (&key #1=#.(gensym)) ... #1# ...)
eddof13 has joined #commonlisp
cage has joined #commonlisp
* jcowan laughs and ughs at the same time
eddof13 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
eddof13 has joined #commonlisp
pranavats has joined #commonlisp
aartaka has joined #commonlisp
son0p has quit [Ping timeout: 248 seconds]
eddof13 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ebrasca has joined #commonlisp
eddof13 has joined #commonlisp
Lycurgus has quit [Quit: Exeunt: personae.ai-integration.biz]
glaucon has quit [Quit: Leaving.]
jeosol has quit [Quit: Client closed]
markb1 has quit [Quit: Leaving]
glaucon has joined #commonlisp
aartaka has quit [Ping timeout: 255 seconds]
aartaka has joined #commonlisp
_cymew_ has quit [Quit: Konversation terminated!]
* mfiano waits for jcowan to provide us with the IPA pronunciation of that utterance
<jcowan> uhhhhhhhhh
<jcowan> I don't think so
<mfiano> ;)
<jcowan> I don't even know how to write the (non-modal) voice used while grunting
<mfiano> /me grunts
<jcowan> /me nods
<jcowan> There is a set of extensions to the IPA for "disordered speech", things like [ʬ] for smacking lips and [ʭ] for gnashing teeth
markb1 has joined #commonlisp
Algernon69 has joined #commonlisp
quoosp has quit [Ping timeout: 255 seconds]
MajorBiscuit has quit [Quit: WeeChat 3.6]
morganw has joined #commonlisp
bjorkintosh has quit [Quit: Leaving]
<phoe> TIL
bjorkintosh has joined #commonlisp
bjorkintosh has joined #commonlisp
akoana has quit [Quit: leaving]
ym has joined #commonlisp
pranavats has left #commonlisp [Disconnected: Hibernating too long]
ebrasca has quit [Remote host closed the connection]
silasfox has quit [Ping timeout: 248 seconds]
bjorkintosh has quit [Quit: Leaving]
bjorkintosh has joined #commonlisp
bjorkintosh has joined #commonlisp
pranavats has joined #commonlisp
_cymew_ has joined #commonlisp
eddof13 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
eddof13 has joined #commonlisp
ldb has joined #commonlisp
tyson2 has quit [Remote host closed the connection]
ldb has quit [Client Quit]
son0p has joined #commonlisp
eddof13 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
eddof13 has joined #commonlisp
aartaka has quit [Ping timeout: 264 seconds]
aartaka has joined #commonlisp
Alfr has quit [Read error: Connection reset by peer]
eddof13 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
eddof13 has joined #commonlisp
kami_ has quit [Ping timeout: 255 seconds]
<dieggsy> is a symlink in quicklisp local-projects to some other directory supposed to work?
<dieggsy> it doesn't seem to for me
Algernon69 has quit [Ping timeout: 265 seconds]
<dieggsy> i lied. it does, i guess. the symlink needs to have the system name, which doesn't seem the case for a real directory. I'll take it
<pjb> dieggsy: it works on some implementations, not all.
Alfr has joined #commonlisp
tyson2 has joined #commonlisp
<dieggsy> I see. I'm confused. maybe it's not working for me, lol. whatever, I'll keep poking at it
<dieggsy> trying under allegro and sbcl
azimut has quit [Remote host closed the connection]
azimut has joined #commonlisp
bitmapper has joined #commonlisp
sweatshirt has joined #commonlisp
<sweatshirt> why is common lisp so underrated?
attila_lendvai_ has joined #commonlisp
attila_lendvai has quit [Ping timeout: 260 seconds]
<jcowan> sweatshirt: It doesn't have a large company supporting it
<jcowan> there used to be, but most of those companies went under the last time the AI bubble burst in the 1980s
<jcowan> or at least they got out of the AI business, and when AI returned, people weren't doing Lisp.
amoroso has joined #commonlisp
glaucon has quit [Read error: Connection reset by peer]
silasfox has joined #commonlisp
jmdaemon has joined #commonlisp
_cymew_ has quit [Ping timeout: 252 seconds]
silasfox has quit [Ping timeout: 246 seconds]
Brucio-61 has quit [Ping timeout: 260 seconds]
scymtym has quit [Ping timeout: 248 seconds]
amoroso has quit [Quit: Client closed]
cage has quit [Quit: rcirc on GNU Emacs 28.2]
eddof13 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Brucio-61 has joined #commonlisp
eddof13 has joined #commonlisp
tyson2 has quit [Remote host closed the connection]
eddof13 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
aartaka has quit [Ping timeout: 246 seconds]
aartaka has joined #commonlisp
aartaka has quit [Ping timeout: 255 seconds]
aartaka has joined #commonlisp
eddof13 has joined #commonlisp
Guest25 has joined #commonlisp
aartaka has quit [Ping timeout: 255 seconds]
tyson2 has joined #commonlisp
aartaka has joined #commonlisp
azimut has quit [Ping timeout: 255 seconds]
azimut has joined #commonlisp
masinter has quit [Ping timeout: 256 seconds]
azimut has quit [Ping timeout: 255 seconds]
aartaka has quit [Ping timeout: 246 seconds]
shka has quit [Ping timeout: 255 seconds]
azimut has joined #commonlisp
alethkit has quit [Changing host]
alethkit has joined #commonlisp
aartaka has joined #commonlisp
aartaka has quit [Ping timeout: 252 seconds]
pawa2 has joined #commonlisp
morganw has quit [Remote host closed the connection]
pve has quit [Quit: leaving]
azimut has quit [Quit: ZNC - https://znc.in]
azimut has joined #commonlisp
avocadoist has quit [Read error: Connection reset by peer]
szkl has quit [Quit: Connection closed for inactivity]
avocadoist has joined #commonlisp
azimut has quit [Ping timeout: 255 seconds]
azimut has joined #commonlisp
<sweatshirt> jcowan: thats fair i suppose; Lisp seems more useful than just AI
<pjb> Definitely.
<sweatshirt> im new-ish to the lang and im really enjoying building my web server; i wonder how CL fairs with game dev
<pjb> sweatshirt: nice too. There's #lispgames
tyson2 has quit [Remote host closed the connection]
avocadoist has quit [Remote host closed the connection]
<sweatshirt> perfect
avocadoist has joined #commonlisp
<jcowan> sweatshirt: 99.9% of all Lisp newbies want to know about game dev, so there's a channel for it
<jcowan> #lispgames
<pjb> sweatshirt: see also https://cliki.net/Game
<ixelp> CLiki: Game
<ixelp> CLiki: Getting Started
BytesAndCoffee|a is now known as BytesAndCoffee
<sweatshirt> sweet
<sweatshirt> you guys have an opinion on clisp vs sbcl etc
<pjb> all CL implementations have their strong points, and weaknesses. Happily, conforming programs run the same on all of them.
<sweatshirt> swet
<jcowan> sbcl is the dominant implementation, primarily because of its high performance, but what pjb says
<pjb> So write your program conformingly, and use any implementation that is convenient for the current phase.
<sweatshirt> sweet*
<pjb> sweatshirt: for example, using clisp or ccl can have advantages during development, but using sbcl or abcl may be interesting in deployment.
<jcowan> This is what happens in a language where the standard outvotes the implementations
<pjb> sometimes you use multiple implementations because they detect different errors.
<pjb> on macOS, you'd favor ccl for Objective-C FFI support.
fitzsim has quit [Remote host closed the connection]
jeosol has joined #commonlisp
eddof13 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<sweatshirt> speaking of deployment, are there any for lisp; i doubt it but worth an ask
<sweatshirt> pjb: and i noticed sbcl noticed some warnings that clisp hadn't complained about
<Bike> are there any what for lisp?
<Bike> deployment systems?
Guest25 has quit [Quit: Client closed]
waleee has quit [Quit: the updatening]
waleee has joined #commonlisp
<ixelp> CLiki: Lisp Deployment
<sweatshirt> hosting; sorry
<NotThatRPG> Pretty much hate clisp. It hasn't had a release in more than 10 years. Right now I've simply given up on testing ASDF on it.
<NotThatRPG> My preferred implementations (no particular order): SBCL, CCL, Allegro. I don't have a license, but LispWorks seems nice. ABCL if you need to deal with Java, but I don't. I don't need to run on embedded systems so the compile-to-C implementations aren't for me
<NotThatRPG> sweatshirt: Do you mean commercial organizations that will host a CL-based website for you? I think you are probably limited to folks that will let you install arbitrary server code or that will let you use a Docker image
<jcowan> Clisp development isn't actually stalled, though, stuff gets fixed in the repo, it's just that there isn't a formal release
<jcowan> the latest change was a week ago
<NotThatRPG> jcowan: Yes, but that means that what's out there is "compile it yourself" or "somebody just grabbed an arbitrary state of the git repo."
<NotThatRPG> If clisp was brilliant, then that might be worth it, but given how good both SBCL and CCL are, why bother with the headache?
* jcowan nods
<NotThatRPG> Why should I test ASDF on it, when I have no idea what state of the code I should be testing against?
<jcowan> Still, lots of things that have releases are "compile it yourself"
<NotThatRPG> jcowan: Sure. But the combination of the build it yourself hassle and the no idea whether my version is anything like yours is the kiss of death from my PoV
<NotThatRPG> Again, if it was the bee's knees as an implementation, then things would be different, but I can't see the argument for running it.
<yitzi> I agree that it needs some love, but it is packaged in some Linux distributions.
<jcowan> Oh yes, but that's the old 2.49 version.
<NotThatRPG> yitzi: yes, but I wish it wasn't!
<yitzi> I maintain an AUR pkg that pulls git if you are on Arch.
<jcowan> I don't know why Haible isn't willing to just release every so often; perhaps it's something like "Well, I haven't done it in so long, it's too hard to restart"
<NotThatRPG> From my (admittedly oddball) PoV, since i have no idea how to maintain ASDF for clisp, clisp is just an IOU that I have no way to pay.