robin has quit [Remote host closed the connection]
robin has joined #commonlisp
Lord_of_Life_ has joined #commonlisp
Lord_of_Life has quit [Ping timeout: 268 seconds]
slyrus has joined #commonlisp
Lord_of_Life_ is now known as Lord_of_Life
istewart has joined #commonlisp
slyrus has quit [Ping timeout: 240 seconds]
slyrus has joined #commonlisp
tboros has joined #commonlisp
waleee has quit [Ping timeout: 256 seconds]
slyrus has quit [Ping timeout: 264 seconds]
char has joined #commonlisp
tboros has quit [Ping timeout: 250 seconds]
slyrus has joined #commonlisp
slyrus has quit [Ping timeout: 260 seconds]
yitzi has quit [Remote host closed the connection]
char has quit [Ping timeout: 240 seconds]
slyrus has joined #commonlisp
<yottabyte>
I'm trying to write a function that checks to see if a plist contains every key I specified. I'm using the every function and then getf, but having some trouble. my arguments are just the list and then a list of the keys I want to check for, list (list :a :b :c)
jon_atack has quit [Ping timeout: 255 seconds]
psilord has quit [Read error: Connection reset by peer]
psilord` has joined #commonlisp
psilord` is now known as psilord
slyrus has quit [Ping timeout: 268 seconds]
dim has quit [Ping timeout: 256 seconds]
<thuna`>
yottabyte: When you have a way to check if a single key exists, you can do (EVERY (LAMBDA (KEY) <code-returning-non-nil-if-KEY-is-contained>) KEYS) or (NOTANY (LAMBDA (KEY) <code-returning-nil-if-KEY-is-contained>) KEYS). There might be a better way but you can do something like (LET ((DEFAULT (MAKE-SYMBOL "DEFAULT"))) (EQ (GETF PLIST KEY DEFAULT) DEFAULT)) to check if KEY is found in PLIST. In this case you use N
<thuna`>
OTANY.
dim has joined #commonlisp
slyrus has joined #commonlisp
slyrus has quit [Ping timeout: 240 seconds]
jonatack has joined #commonlisp
anticomputer_ has quit [Ping timeout: 260 seconds]
anticomputer has joined #commonlisp
slyrus has joined #commonlisp
slyrus has quit [Ping timeout: 246 seconds]
<yottabyte>
Okay, I will try some things out in the morning
tboros has joined #commonlisp
slyrus has joined #commonlisp
josrr has quit [Remote host closed the connection]
istewart has quit [Quit: Konversation terminated!]
slyrus has quit [Ping timeout: 252 seconds]
<beach>
fe[nl]ix: I wasn't at ELS this year, and I didn't listen to the talks in real time.
slyrus has joined #commonlisp
danza has quit [Ping timeout: 264 seconds]
screwlisp has joined #commonlisp
slyrus has quit [Ping timeout: 240 seconds]
rtypo has quit [Ping timeout: 264 seconds]
slyrus has joined #commonlisp
danse-nr3 has joined #commonlisp
hineios23 has quit [Quit: Ping timeout (120 seconds)]
slyrus has quit [Ping timeout: 268 seconds]
hineios23 has joined #commonlisp
younder has quit [Ping timeout: 255 seconds]
slyrus has joined #commonlisp
tboros has joined #commonlisp
slyrus has quit [Ping timeout: 268 seconds]
miique has quit [Ping timeout: 272 seconds]
slyrus has joined #commonlisp
danse-nr3 has quit [Remote host closed the connection]
danse-nr3 has joined #commonlisp
genera_ has joined #commonlisp
genera has quit [Ping timeout: 255 seconds]
pfdietz has quit [Quit: Client closed]
slyrus has quit [Ping timeout: 255 seconds]
spaghettijeff has quit [Ping timeout: 268 seconds]
tboros has quit [Quit: Client closed]
tboros has joined #commonlisp
kopiyka_ has quit [Remote host closed the connection]
slyrus has joined #commonlisp
kopiyka has joined #commonlisp
synchromesh has quit [Read error: Connection reset by peer]
synchromesh has joined #commonlisp
slyrus has quit [Ping timeout: 268 seconds]
gorignak has quit [Quit: quit]
tursom has quit [Ping timeout: 255 seconds]
tursom has joined #commonlisp
tboros has quit [Ping timeout: 250 seconds]
slyrus has joined #commonlisp
slyrus has quit [Ping timeout: 268 seconds]
slyrus has joined #commonlisp
shka has joined #commonlisp
slyrus has quit [Ping timeout: 260 seconds]
<thuna`>
_death: Ah, I knew I was forgetting something!
King_julian has joined #commonlisp
slyrus has joined #commonlisp
danse-nr3 has quit [Quit: Leaving]
slyrus has quit [Ping timeout: 246 seconds]
emaczen has quit [Ping timeout: 268 seconds]
<jackdaniel>
how would you call object's property that may be stored in a slot or computed, that is accessed with a function? slot is of course not right; accessor? but accessor is means to get that property; simply property? a field?
<gilberth>
You already named it a "property".
<Inline>
property that may be stored in a slot is a property
<Inline>
a function to access it an accessor
<gilberth>
When I read "field" my mental image is some actual space (field) where to put something.
<screwlisp>
property kinda sounds like symbol-plist
<screwlisp>
A maybe-cached computed value probably has a technical term
danse-nr3 has joined #commonlisp
dino_tutter has joined #commonlisp
slyrus has joined #commonlisp
<mrcom>
I was thinking plists too, but dunno, "property" still seems to describe it pretty well. That other lisp, javascript, calls them properties. So does Java.
tok has joined #commonlisp
<mrcom>
(You know beach is going to tell you to always use accessors.)
<mrcom>
"Attribute" is another commonish term, but then you're up against alists.
<jackdaniel>
alist comes from "association", not "attribute"
<mrcom>
Ah. What's the history on plist/alist? Two different implemtations smooshed into CL?
<jackdaniel>
plists were historically used to assign some property to a symbol (i.e "this symbol function is #<x>), while alists are a conventional dictionary data structure that predates hash tables
slyrus has quit [Ping timeout: 272 seconds]
anticomputer has quit [Ping timeout: 260 seconds]
anticomputer has joined #commonlisp
amb007 has quit [Read error: Connection reset by peer]
amb007 has joined #commonlisp
<jackdaniel>
I think that we could make a stretch and say, that plists were ad-hoc slots, while alists were dictionaries
donleo has joined #commonlisp
skeemer has quit [Ping timeout: 268 seconds]
slyrus has joined #commonlisp
jonatack has quit [Ping timeout: 272 seconds]
jonatack has joined #commonlisp
<mrcom>
I'm seeing that alists were used to implement "free" vars (now specials); it was handy that you could treat it as a stack and push and pop scopes.
<jackdaniel>
sure, this structure is also friendly for functional programs, because it does not mutate
<jackdaniel>
i.e when you push a binding, the old value (possibly bound somewhere else) is left intact
chiselfuse has quit [Remote host closed the connection]
chiselfuse has joined #commonlisp
mgl_ has joined #commonlisp
nybble has quit [Ping timeout: 268 seconds]
slyrus has joined #commonlisp
ElKowar has quit [Ping timeout: 246 seconds]
msavoritias has joined #commonlisp
aciep has joined #commonlisp
King_julian has quit [Ping timeout: 252 seconds]
slyrus has quit [Ping timeout: 252 seconds]
screwlisp has quit [Remote host closed the connection]
hay has joined #commonlisp
snits has quit [Quit: No Ping reply in 180 seconds.]
snits has joined #commonlisp
slyrus has joined #commonlisp
ElKowar has joined #commonlisp
decweb has joined #commonlisp
slyrus has quit [Ping timeout: 264 seconds]
yitzi has joined #commonlisp
random-nick has joined #commonlisp
slyrus has joined #commonlisp
jon_atack has joined #commonlisp
jonatack has quit [Ping timeout: 268 seconds]
slyrus has quit [Ping timeout: 252 seconds]
X-Scale has quit [Quit: Client closed]
slyrus has joined #commonlisp
slyrus has quit [Ping timeout: 260 seconds]
slyrus has joined #commonlisp
decweb has quit [Ping timeout: 255 seconds]
decweb has joined #commonlisp
varjag has joined #commonlisp
slyrus has quit [Ping timeout: 256 seconds]
amb007 has quit [Ping timeout: 268 seconds]
amb007 has joined #commonlisp
slyrus has joined #commonlisp
slyrus has quit [Ping timeout: 252 seconds]
slyrus has joined #commonlisp
pranav has quit [Remote host closed the connection]
decweb has quit [Ping timeout: 260 seconds]
jon_atack has quit [Ping timeout: 256 seconds]
danse-nr3 has quit [Ping timeout: 272 seconds]
jonatack has joined #commonlisp
danse-nr3 has joined #commonlisp
decweb has joined #commonlisp
rtypo has joined #commonlisp
jon_atack has joined #commonlisp
slyrus has quit [Ping timeout: 256 seconds]
jonatack has quit [Ping timeout: 268 seconds]
waleee has joined #commonlisp
pranav has joined #commonlisp
greenfork has joined #commonlisp
chomwitt has joined #commonlisp
slyrus has joined #commonlisp
chomwitt has quit [Ping timeout: 255 seconds]
thuna` has quit [Ping timeout: 255 seconds]
slyrus has quit [Ping timeout: 252 seconds]
donleo has quit [Ping timeout: 240 seconds]
miique has joined #commonlisp
miique has quit [Max SendQ exceeded]
miique has joined #commonlisp
miique has quit [Max SendQ exceeded]
miique has joined #commonlisp
chomwitt has joined #commonlisp
danse-nr3 has quit [Ping timeout: 256 seconds]
Renfield has quit [Ping timeout: 268 seconds]
Renfield has joined #commonlisp
King_julian has joined #commonlisp
slyrus has joined #commonlisp
slyrus has quit [Ping timeout: 268 seconds]
amb007 has quit [Ping timeout: 268 seconds]
danza has joined #commonlisp
skeemer has joined #commonlisp
King_julian has quit [Ping timeout: 240 seconds]
amb007 has joined #commonlisp
slyrus has joined #commonlisp
danza has quit [Ping timeout: 256 seconds]
King_julian has joined #commonlisp
tok has quit [Ping timeout: 256 seconds]
slyrus has quit [Ping timeout: 252 seconds]
msavoritias has quit [Ping timeout: 264 seconds]
slyrus has joined #commonlisp
danse-nr3 has joined #commonlisp
danse-nr3 has quit [Remote host closed the connection]
danse-nr3 has joined #commonlisp
chomwitt has quit [Ping timeout: 255 seconds]
X-Scale has joined #commonlisp
chomwitt has joined #commonlisp
josrr has joined #commonlisp
slyrus has quit [Remote host closed the connection]
slyrus has joined #commonlisp
chomwitt has quit [Ping timeout: 256 seconds]
slyrus has quit [Ping timeout: 268 seconds]
josrr has quit [Remote host closed the connection]
<yottabyte>
why does something like this not work? (every #'(lambda (key) (getf key '(:a 1 :b 2 :c 3 :d 4))) '(:a :b :c))
<yitzi>
Its getf plist key. You have the arguments reversed in GETF
<yottabyte>
oh what the heckkkkk
<yottabyte>
major facepalm
<beach>
yottabyte: Also, you should drop the #' in front of (lambda ...).
<yottabyte>
oh right, someone told me that before, why is that?
<beach>
Because LAMBDA is a macro that expands to #'(LAMBDA ...)
<beach>
So you can think of #'(LAMBDA ...) as existing for only historical reasons, and you can think of the operator LAMBDA as being the function constructor.
<beach>
Similar argument to the one that you can drop SETQ and use SETF, and the one that you can drop RPLACA and use (SETF CAR).
synchromesh has quit [Read error: Connection reset by peer]
synchromesh has joined #commonlisp
<yottabyte>
gotcha
<dlowe>
I would not shed a tear if the older things disappeared
<dlowe>
and SETF were renamed to SET
edgar-rft_ has joined #commonlisp
edgar-rft has quit [Ping timeout: 256 seconds]
chomwitt has joined #commonlisp
josrr has joined #commonlisp
slyrus has joined #commonlisp
tok has joined #commonlisp
zetef has joined #commonlisp
<yottabyte>
I actually just used setq to update the value of a defvar yesterday. should I have used setf?
<yottabyte>
and can we get multi line strings up in here too? it would make the sql queries I'm writing be formatted more nicely
chomwitt has quit [Ping timeout: 255 seconds]
X-Scale has quit [Quit: Client closed]
msavoritias has joined #commonlisp
<beach>
A "multi-line string" is just a string that spans more than one line.
<beach>
No need to do anything special.
<beach>
And, yes, most people would probably use SETF rather than SETQ.
<yottabyte>
oh, true about the strings. it seems I can just do it
<beach>
yottabyte: Maybe you should expose your code (on say plaster.tymoon.eu) to that we can give you more feedback.
<yottabyte>
oh I will. eventually I'm going to have to figure out how to split things up into different files and tie them all together. I am a little familiar with packages but I don't know how to define the system and what about asdf. right now I'm just ql:quickloading my dependencies
donleo has joined #commonlisp
emaczen has joined #commonlisp
slyrus has quit [Ping timeout: 240 seconds]
zetef has quit [Ping timeout: 268 seconds]
X-Scale has joined #commonlisp
danse-nr3 has quit [Ping timeout: 240 seconds]
lucasta has joined #commonlisp
zetef has joined #commonlisp
slyrus has joined #commonlisp
chomwitt has joined #commonlisp
thuna` has joined #commonlisp
chomwitt has quit [Ping timeout: 268 seconds]
slyrus has quit [Ping timeout: 252 seconds]
King_julian has quit [Ping timeout: 252 seconds]
slyrus has joined #commonlisp
dcb has quit [Quit: MSN Messenger]
danse-nr3 has joined #commonlisp
dcb has joined #commonlisp
slyrus has quit [Ping timeout: 268 seconds]
wacki has joined #commonlisp
jon_atack has quit [Ping timeout: 255 seconds]
_cymew_ has quit [Ping timeout: 255 seconds]
prokhor_ has quit [Ping timeout: 256 seconds]
prokhor has joined #commonlisp
danse-nr3 has quit [Ping timeout: 268 seconds]
pfdietz has joined #commonlisp
varjag has quit [Quit: ERC (IRC client for Emacs 27.1)]
<ixelp>
Compilation error under ros/sbcl-bin/2.4.3 and up; DEBUG-VAR-INFO · Issue #23 · Shinmera/dissect · GitHub
mgl_ has quit [Ping timeout: 268 seconds]
emaczen has quit [Ping timeout: 255 seconds]
<zyd>
Shinmera: i wonder if pinning an issue would help, with all caps "CANT COMPILE? READ THIS!"
<Shinmera>
I'm not going to do that.
<zyd>
i wouldnt want to either
<mrcom>
dlowe: Sometimes you still need the evaluated, non-quoting version.
<yottabyte>
hahaha Shinmera, sheesh
_cymew_ has joined #commonlisp
<Shinmera>
Only Zach can safe me from this heck
slyrus has quit [Ping timeout: 268 seconds]
<yottabyte>
side note, I've been playing around with AIs like chatgpt, gemini, and claude to generate some CL code for me, nothing serious, just kind of playing with it, and it's almost always wrong. like it messes up syntax constantly. my prompts are good, too. I can rely it on them for virtually anything, not that I'm really trying to, most of my learning has been from reading documentation, examples, and talking with you all
<yottabyte>
idk if others share in this experience
<zyd>
yottabyte: Yes, its what I've heard from anyone that has used an LLM for Lisp code generation. They're bad at it. I did it for shits n giggles with a local model and its the same thing as well. Not like CL is a language that would benefit from the crap anyway.
_cymew_ has quit [Ping timeout: 240 seconds]
scymtym has joined #commonlisp
<mrcom>
(a) Much smaller training dataset for CL vs. JS or whatever. (b) Far fewer SEO-junk sites regurgitating the same (correct-ish) code.
<mrcom>
Maybe (c), lisp is just harder to auto-correlate for idioms.
<Equill>
d) Much denser, more expressive language. I don't think I've heard of IDEs generating boilerplate CL code, as seems to be common in Java.
<yottabyte>
I feel like LLMs just aren't good for generating code in general, but I could be very well be wrong
rtypo has quit [Quit: WeeChat 4.2.2]
rtypo has joined #commonlisp
<Equill>
I'd be more interested in something that helps me figure out what's needed, and that helps me validate the design. Writing the code is the *easy* part.
anticomputer has quit [Remote host closed the connection]
triffid has quit [Remote host closed the connection]
slyrus has joined #commonlisp
triffid has joined #commonlisp
anticomputer has joined #commonlisp
<mrcom>
Equill: boilerplate -- (1) developer writes a contributed SLIME module to auto-populate Defclass/Defstruct accessors, vs. (2) developer writes CL macro that wraps said function.
<mrcom>
You know which it's going to be.
<Equill>
mrcom: I'll take the macro every time.
zetef has quit [Remote host closed the connection]
<mrcom>
Yup. Everybody does it, with different implementations, so there's less commonality in the resulting higher-level code. Less common threads for a LLM to correlate.
slyrus has quit [Ping timeout: 256 seconds]
<mrcom>
Sounds like a dissertation subject--"Common coding idioms in Lisp-like languages".
<mrcom>
It would be mind-numbing, but useful.
<mrcom>
(Usefull for tool writers.)
<mrcom>
beach: You run across anything like the above? Anything similar thats informing you regarding IDE editor?
<beach>
I am not sure what the question is. And I am afraid I have to vanish in order to fix dinner for my (admittedly small) family. I'll be back tomorrow.
<mrcom>
K.
wacki has quit [Read error: Connection reset by peer]
emaczen has joined #commonlisp
wacki has joined #commonlisp
piethesailor has joined #commonlisp
lucasta has quit [Remote host closed the connection]
<piethesailor>
Hello all!
<piethesailor>
I know this is a nyxt question, but responses are terribly slow on #nyxt and the discord. Hoping I can get some help here. Anyone familiar with plump?
<piethesailor>
I am looking to insert text into input feild nodes in a DOM. In javascript it is:
<piethesailor>
in plump I know I can (plump:get-element-by-id *page-dom* "elementId")
nybble has joined #commonlisp
<piethesailor>
but where and how does the .values = "Johnny Bravo"; come into play in a lisp context
<piethesailor>
I'll keep playing around with it, but if someone beats me to it i'd be so happy lol
awlygj has quit [Quit: leaving]
k_hachig has joined #commonlisp
k_hachig_ has joined #commonlisp
slyrus has joined #commonlisp
k_hachig has quit [Ping timeout: 268 seconds]
<piethesailor>
I have done (plump:set-attribute *element* 'value "test") and that runs true. (plump:get-attribute *input* 'value) returns "test", but in my nyxt inspector I see the value of 'value' is still my last search inqury I did manually "hackernews", and "test" has not been added to the search bar feild. BTW I am testing this by trying to add text to the search bar in search.atlas.engineer
<piethesailor>
also running: document.getElementById("q").value = "Johnny Bravo"; in the nyxt console does add "Johnny Bravo" in the search bar
<piethesailor>
so I should be getting close here. sorry for wall of text
amb007 has quit [Ping timeout: 255 seconds]
amb007 has joined #commonlisp
k_hachig has joined #commonlisp
msv has joined #commonlisp
k_hachig_ has quit [Ping timeout: 255 seconds]
<skin>
Have you looked at lquery
slyrus has quit [Ping timeout: 268 seconds]
<piethesailor>
No, simply becuase nyxt is not built with lquery. Though I could quickload it into the image and try it
random-nick has quit [Ping timeout: 268 seconds]
<piethesailor>
I also have a real difficult time looking at jquery answers and trying to reorganize as lquery. Maybe chatgpt is my best helper here
jonatack has joined #commonlisp
random-nick has joined #commonlisp
slyrus has joined #commonlisp
metsomedog has joined #commonlisp
k_hachig has quit [Ping timeout: 255 seconds]
k_hachig has joined #commonlisp
zxcvz has joined #commonlisp
zxcvz has quit [Client Quit]
<piethesailor>
f it. There has to be away to push raw javascript to the browser...
slyrus has quit [Ping timeout: 256 seconds]
msavoritias has quit [Ping timeout: 256 seconds]
emaczen has quit [Ping timeout: 255 seconds]
cage has joined #commonlisp
mgl_ has joined #commonlisp
<piethesailor>
.. ffi-buffer-evaluate-javascript is the answer. its hideous but it Just Works
k_hachig has quit [Ping timeout: 268 seconds]
Lycurgus has joined #commonlisp
tok has quit [Ping timeout: 268 seconds]
slyrus has joined #commonlisp
jonatack has quit [Ping timeout: 255 seconds]
emaczen has joined #commonlisp
jonatack has joined #commonlisp
mgl_ has quit [Ping timeout: 268 seconds]
jonatack has quit [Ping timeout: 264 seconds]
Pixel_Outlaw has joined #commonlisp
slyrus has quit [Ping timeout: 240 seconds]
jonatack has joined #commonlisp
alcor has joined #commonlisp
danse-nr3 has joined #commonlisp
slyrus has joined #commonlisp
mgl_ has joined #commonlisp
danse-nr3 has quit [Remote host closed the connection]
danse-nr3 has joined #commonlisp
danse-nr3 has quit [Remote host closed the connection]
danse-nr3 has joined #commonlisp
X-Scale has quit [Quit: Client closed]
scymtym has quit [Quit: Application exit]
akoana has joined #commonlisp
attila_lendvai has joined #commonlisp
slyrus has quit [Ping timeout: 268 seconds]
miique_ has joined #commonlisp
miique_ has quit [Max SendQ exceeded]
slyrus has joined #commonlisp
miique has quit [Ping timeout: 268 seconds]
prokhor has quit [Ping timeout: 252 seconds]
danse-nr3 has quit [Ping timeout: 255 seconds]
mgl_ has quit [Ping timeout: 268 seconds]
slyrus has quit [Ping timeout: 260 seconds]
rtypo has quit [Quit: WeeChat 4.2.2]
rtypo has joined #commonlisp
Lycurgus has quit [Quit: leaving]
slyrus has joined #commonlisp
slyrus has quit [Remote host closed the connection]
Doranon has joined #commonlisp
slyrus has joined #commonlisp
<Doranon>
Hello, I am quite new to computers and programming in general. I like to believe I am reasonably technical. Can anyone recommend me resources for learning common lisp?
slyrus has quit [Remote host closed the connection]
<Doranon>
thanks for replying @ixelp! I already took a look at cliki but can't decide what to start with. Would you recommend practical common lisp or ANSI Common Lisp?
<Doranon>
Also I got interested in learning lisp after coming across Interlisp. Should I start with that or should I choose the crowd favourite SBCL?
<yitzi>
The first, Practical Common Lisp.
<nani>
Doranon: Practical common lisp is a free ebook from the author.
<metsomedog>
the common lisp cookbook is great if you're wondering how to do common things you might be used to from other languages
<yitzi>
Start with SBCL.
<bjorkintosh>
Doranon: which OS do you use? it doesn't matter too much, just curious.
<Doranon>
I have some experience with lua and python. I guess I'll use PCL and lisp cookbook side by side
<Doranon>
Also @bjorkintosh I use linux mint
<bjorkintosh>
ah okay.
<bjorkintosh>
most of the tools should be easily accessible.
<Doranon>
Thanks for all the resources, people! Good day to you!
Doranon has quit [Quit: Leaving]
<nani>
Daranon: Interlisp is not Common Lisp
josrr has quit [Remote host closed the connection]
josrr has joined #commonlisp
mgl_ has joined #commonlisp
scymtym has joined #commonlisp
slyrus has joined #commonlisp
ebrasca has joined #commonlisp
slyrus has quit [Ping timeout: 255 seconds]
<random-nick>
doesn't medley interlisp contain a common lisp implementation?
<yitzi>
Its not conforming.
<yitzi>
At a minimum LOOP and PATHNAME have issues as I recall.