<fiddlerwoaroof>
Gives you tab-complete And M-i for documentation
bh34e5 has quit [Read error: Connection reset by peer]
bjorkintosh has quit [Ping timeout: 240 seconds]
dinomug has joined #commonlisp
tibfulv has quit [Remote host closed the connection]
tibfulv has joined #commonlisp
X-Scale has joined #commonlisp
meritamen has quit [Remote host closed the connection]
Oladon has quit [Quit: Leaving.]
CO2 has quit [Quit: WeeChat 4.1.0]
ocreugf has left #commonlisp [ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.1)]
mariari has quit [Ping timeout: 255 seconds]
notzmv has quit [Ping timeout: 264 seconds]
zxcvz has joined #commonlisp
zxcvz has quit [Client Quit]
overclucker_ has joined #commonlisp
overclucker has quit [Ping timeout: 258 seconds]
dcb has quit [Quit: MSN Messenger 4.1.0]
Lycurgus has joined #commonlisp
Lycurgus has quit [Changing host]
Lycurgus has joined #commonlisp
contrapunctus has joined #commonlisp
Lycurgus has quit [Quit: leaving]
random-jellyfish has joined #commonlisp
random-jellyfish has joined #commonlisp
random-jellyfish has quit [Changing host]
dinomug has quit [Remote host closed the connection]
dinomug has joined #commonlisp
zxcvz has joined #commonlisp
amb007 has quit [Remote host closed the connection]
amb007 has joined #commonlisp
X-Scale has quit [Ping timeout: 248 seconds]
zxcvz has quit [Quit: zxcvz]
dinomug has quit [Remote host closed the connection]
X-Scale has joined #commonlisp
shka has joined #commonlisp
dinomug has joined #commonlisp
meritamen has joined #commonlisp
contrapunctus has left #commonlisp [#commonlisp]
habamax has joined #commonlisp
contrapunctus has joined #commonlisp
X-Scale has quit [Quit: Client closed]
thollief has joined #commonlisp
herjazz has joined #commonlisp
pve has joined #commonlisp
contrapunctus has left #commonlisp [#commonlisp]
anticomputer has quit [Remote host closed the connection]
anticomputer has joined #commonlisp
contrapunctus has joined #commonlisp
dinomug has quit [Remote host closed the connection]
anticomputer has quit [Remote host closed the connection]
anticomputer has joined #commonlisp
anticrisis has quit [Read error: Connection reset by peer]
pranavats has joined #commonlisp
<cedb>
fiddlerwoaroof: hell yeah thanks
mariari has joined #commonlisp
anticomputer has quit [Ping timeout: 256 seconds]
anticomputer has joined #commonlisp
anticomputer has quit [Remote host closed the connection]
anticomputer has joined #commonlisp
donleo has joined #commonlisp
meritamen has quit [Remote host closed the connection]
santiagopim has joined #commonlisp
Guest66 has joined #commonlisp
meritamen has joined #commonlisp
meritamen has quit [Client Quit]
random-nick has joined #commonlisp
lispy has quit [Ping timeout: 248 seconds]
dino_tutter has joined #commonlisp
contrapunctus has left #commonlisp [#commonlisp]
meritamen has joined #commonlisp
meritamen has quit [Remote host closed the connection]
cage has joined #commonlisp
amb007 has quit [Ping timeout: 252 seconds]
amb007 has joined #commonlisp
CO2 has joined #commonlisp
mgl has joined #commonlisp
random-nick has quit [Ping timeout: 255 seconds]
kuao has joined #commonlisp
mgl has quit [Ping timeout: 240 seconds]
random-nick has joined #commonlisp
McParen has joined #commonlisp
rgherdt has joined #commonlisp
<McParen>
hey #cl, can somebody maybe tell why we can equalp structs but not clos objects, or maybe point me to a doc explaining that?
<hayley>
EQUAL and EQUALP seem to be rather arbitrarily designed. I guess a structure is meant to be seen as "plain old data" for which structural equality is reasonable, and a standard instance is associated with a more abstract form of equality?
<McParen>
is this maybe because defstruct automatically generates a predicate and defclass doesnt and equalp somehow hooks into that?
<McParen>
a class is basically identical to a struct, a data structure with slots.
<McParen>
except for the fact that defstruct initializes several utility functions.
<hayley>
Both are equivalent to functions, but few languages define equality on functions (other than reference equality).
rgherdt has quit [Ping timeout: 258 seconds]
habamax has quit [Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.1.90)]
Lycurgus has joined #commonlisp
Lycurgus has quit [Changing host]
Lycurgus has joined #commonlisp
kuao has quit []
tyson2 has joined #commonlisp
mgl has joined #commonlisp
<beach>
McParen: Careful with the terminology. There is no such thing as a "CLOS object", and every Common Lisp object is an instance of some class.
<McParen>
beach, i have not tried to be precise. the difference in question is (make-instance 'foo) vs (make-foo).
jonatack has quit [Ping timeout: 255 seconds]
<beach>
(MAKE-INSTANCE 'FOO) will make an "instance of a standard class".
jonatack has joined #commonlisp
herjazz has quit [Quit: leaving]
Lycurgus has quit [Quit: leaving]
yitzi has joined #commonlisp
chomwitt has joined #commonlisp
Monad has joined #commonlisp
Monad is now known as pequod
pequod is now known as pequod3141
bh34e5 has joined #commonlisp
Guest66 has quit [Quit: Client closed]
<beach>
Speaking of which, this seems to be allowed: (defmethod make-instance ((object (eql 'integer)) &key value &allow-other-keys) value) and then (make-instance 'integer :value 234)
<pequod3141>
Hello, I' am playing around with hash-tables using the make-hash library from https://github.com/genovese/make-hash. I have created a simple package with a function to access the hash-table (https://pastecode.io/s/wzbn0y1e). Can anybody tell me why I cannot access the hash-table-keys from outside the package :package-test via (package-test:foo 'a) but can access it via (package-test:foo package-test::'a)? Thank you.
<ixelp>
GitHub - genovese/make-hash: A Common Lisp package for hash table creation with flexible, extensible initializers.
<beach>
pequod3141: It looks like the symbol A is in the PACKAGE-TEST package.
<beach>
pequod3141: If so, you can't access it without a package prefix when you are in a different package. Unless of course you import that symbol into the different package.
<beach>
pequod3141: If you define your *LETTER-TABLE* in your client package, you should be fine.
<pequod3141>
Is it not somehow possible to say (defun foo (sym) (gethash (make-symbol-internal-to-package sym) *letter-table*))
<pequod3141>
I tried that but defining foo as (defun foo (sym)
<pequod3141>
(gethash (intern sym) *letter-table*)) and then calling (package-test:foo "a") still returns nil.
<beach>
That's because symbol have upper-case names by default.
<beach>
And you just created a symbol with a lower-case name.
<pequod3141>
(package-test:foo "A") doesn't work also :/
Gleefre has quit [Remote host closed the connection]
<beach>
If you just call (INTERN SYM) without specifier which package, it will use the current package, i.e., the value of *PACKAGE*.
<beach>
Try (intern sym :package-test)
<pequod3141>
Thank you, that worked.
<beach>
You can even do (intern (symbol-name symbol) :package-test) so that you can use symbols from any package to designate the ones in the PACKAGE-TEST package.
<beach>
Pleasure.
notzmv has joined #commonlisp
<pequod3141>
I just tried that but used (string symbol) instead of symbol-name :)