msavoritias has quit [Remote host closed the connection]
msavoritias has joined #commonlisp
occ has quit [Ping timeout: 250 seconds]
notzmv has quit [Ping timeout: 250 seconds]
johnjaye has quit [Ping timeout: 268 seconds]
johnjaye has joined #commonlisp
cognemo has quit [Ping timeout: 268 seconds]
cognemo has joined #commonlisp
Brucio-61 has quit [Remote host closed the connection]
Brucio-61 has joined #commonlisp
occ has joined #commonlisp
dtman34 has joined #commonlisp
notzmv has joined #commonlisp
dtman34 has quit [Ping timeout: 240 seconds]
dcb has quit [Quit: MSN Messenger 3.8]
dcb has joined #commonlisp
<bitblit1>
Shinmera: I would love to help and wanted to for so long but I just am not qualified enough :(
hernan has joined #commonlisp
Patternmaster has quit [Ping timeout: 268 seconds]
Patternmaster has joined #commonlisp
Patternmaster has quit [Changing host]
Patternmaster has joined #commonlisp
oljenkins has quit [Ping timeout: 268 seconds]
oljenkins has joined #commonlisp
edgar-rft has joined #commonlisp
Oddity has joined #commonlisp
dcb has quit [Quit: MSN Messenger 3.8]
NotThatRPG has joined #commonlisp
kg7ski has quit [Ping timeout: 268 seconds]
kg7ski has joined #commonlisp
igemnace has joined #commonlisp
NotThatRPG has quit [Ping timeout: 268 seconds]
dtman34 has joined #commonlisp
ec_ has quit [Ping timeout: 240 seconds]
ec_ has joined #commonlisp
Lord_of_Life has quit [Ping timeout: 268 seconds]
azimut has joined #commonlisp
Lord_of_Life_ has joined #commonlisp
Lord_of_Life_ is now known as Lord_of_Life
Gleefre has joined #commonlisp
ec_ has quit [Ping timeout: 240 seconds]
<Shinmera>
idunno, all of these tasks are pretty self-contained
<Shinmera>
and well-defined
morganw has joined #commonlisp
justache- has joined #commonlisp
justache has quit [Ping timeout: 268 seconds]
Algernon69 has joined #commonlisp
Algernon69 has quit [Client Quit]
amb007 has quit [Ping timeout: 265 seconds]
amb007 has joined #commonlisp
NotThatRPG has joined #commonlisp
<ecraven>
CL supports reading arbitrary objects from certain types of streams, right? how does that work, and what happens if I try to read a byte or something non-object from those streams?
matt` has joined #commonlisp
matt` has quit [Remote host closed the connection]
matt` has joined #commonlisp
bjorkint0sh has joined #commonlisp
bjork1intosh has quit [Ping timeout: 246 seconds]
attila_lendvai has joined #commonlisp
igemnace has quit [Remote host closed the connection]
<Shinmera>
it does not.
igemnace has joined #commonlisp
<Shinmera>
CL only has binary streams and character streams.
<Shinmera>
And if you try to read the wrong thing from either it is an error.
cognemo has quit [Ping timeout: 268 seconds]
Andrew is now known as Andrew_
tyson2 has joined #commonlisp
bjorkint0sh has quit [Remote host closed the connection]
bjorkint0sh has joined #commonlisp
jeffrey has joined #commonlisp
attila_lendvai has quit [Ping timeout: 248 seconds]
attila_lendvai has joined #commonlisp
<jackdaniel>
that's incorrect
<jackdaniel>
gray streams allow you to define other types of streams, and clim exploits that and defines streams that operate on other obhects too
<jackdaniel>
objects*
<jackdaniel>
technically not part of cl standard, but so are not threads and many other things
<jackdaniel>
ecraven: there are operators you may define yourself for your custom stream, i.e stream-read-gesture
<jackdaniel>
such stream may but does not have to implement a character protocol too
<jackdaniel>
depending on that read-char may but does not have to error
<jackdaniel>
a convention is that read-foo is a trampoline to specializable stream-read-foo funtion
Posterdati has quit [Ping timeout: 250 seconds]
<ecraven>
thanks
<jackdaniel>
sure
occ has quit [Ping timeout: 250 seconds]
Lycurgus has joined #commonlisp
<jackdaniel>
also it is possible to have "translation streams" that coerce objects of one type to another when taken from/to another stream
<jackdaniel>
flexi streams is a good example of that, but there are more interesting uses
<jackdaniel>
you could define a stream that formats an object according to certain rules (i.e serializes it to xml or json)
<jackdaniel>
or does conversion from Foo to Bar instances etc etc
<jackdaniel>
or make a generator stream that conses new objects on read
Posterdati has joined #commonlisp
<jackdaniel>
sky is the limit :)
attila_lendvai_ has joined #commonlisp
Posterdati has quit [Ping timeout: 240 seconds]
attila_lendvai has quit [Read error: Connection reset by peer]
attila_lendvai_ is now known as attila_lendvai
Gleefre has quit [Ping timeout: 245 seconds]
occ has joined #commonlisp
karlosz has joined #commonlisp
Posterdati has joined #commonlisp
igemnace has quit [Remote host closed the connection]
Posterdati has quit [Ping timeout: 248 seconds]
cage has joined #commonlisp
tevo has quit [Read error: Connection reset by peer]
habamax has quit [Remote host closed the connection]
tevo has joined #commonlisp
Gleefre has joined #commonlisp
igemnace has joined #commonlisp
Posterdati has joined #commonlisp
bjork1intosh has joined #commonlisp
matt` has quit [Remote host closed the connection]
borodust has quit [Ping timeout: 268 seconds]
bjorkint0sh has quit [Ping timeout: 250 seconds]
borodust has joined #commonlisp
Posterdati has quit [Ping timeout: 240 seconds]
<bitblit1>
hello!
<beach>
Hello bitblit1.
<bitblit1>
How can I guarantee that an object be an unsigned-byte 32
<bitblit1>
as a cffi function requires it to be that
<bitblit1>
which works as long as I am entering a literal
msavoritias has quit [Remote host closed the connection]
<bitblit1>
Now, if I replace main-stack-transition in the setf line with a literal, it stops showing that error:
<beach>
Sorry, I know nothing about gtk nor of FFI.
<bitblit1>
beach: It says:
<bitblit1>
The value *MAIN-STACK-TRANSITION* is not of type
<bitblit1>
[Condition of type TYPE-ERROR]
<bitblit1>
(UNSIGNED-BYTE 32)
<bitblit1>
beach: yeah but I wanted to make sure this wasn't like me being dumb or smth
<beach>
Maybe the SETF requires a literal, and you are trying to set it to a symbol.
<beach>
I mean, you are literally passing the symbol, because the last list is quoted.
<beach>
So it is not evaluated.
<bitblit1>
Ooppppppppppppppppppppppps
<beach>
'("John Cena" *main-stack-transition*) does not evaluate to ("John Cena" 1) but to ("John Cena" *main-stack-transition*)
<bitblit1>
I knew I was doing something stupid
<bitblit1>
Ugh, sorry for wasting your time
<beach>
No problem.
<pjb>
bitblit1: you're discovering the fundamental difference of languages like lisp, and languages like C.
Posterdati has quit [Ping timeout: 256 seconds]
<pjb>
bitblit1: in lisp-like languages, objects have a type, and variables don't. In C-like language variables have a type, and values don't.
<pjb>
bitblit1: 8 is a lisp object. It's always 8. As an immutable object, its identity, and its value don't change.
<pjb>
bitblit1: int32_t a; is a variable that is able to hold 32 bits encoding in 2-complement values such as 0x000000008
<pjb>
bitblit1: int8_t b; is a variable able to hold 8 bits encoding in 2-complement values such as 0x08.
attila_lendvai has quit [Ping timeout: 256 seconds]
<pjb>
bitblit1: when you do a=b; in C, the compiler must generate code to transform 8 bits into 32 bits (it's called sign-extend). (happily, machines usually are able to do that in a single instruction, but sometimes there's a specific sign-extend instruction).
<pjb>
bitblit1: on the other hand, when you do (let ((a) (b 8)) (setf a b)) in lisp, the compiler just generates code to copy the reference to the object 8 stored in b, into the variable a.
<pjb>
No object is mutated, duplicated or anything. Just a pointer is copied from b to a.
<pjb>
bitblit1: with FFI, you have the problem of going from a lisp variable a pointing to a lisp object 8, to a C variable int32_t b; into which we must store 0x00000008 32-bits.
<pjb>
This can indeed work only if A holds a value of type (signed-byte 32). (or if uint32_t, (unsigned-byte 32)).
Posterdati has joined #commonlisp
<pjb>
(let ((a 8)) (check-type a (signed-byte 32)) a) #| --> 8 |# indeed validates that the (lisp) type of the object 8 is (signed-byte 32).
<pjb>
Lisp types form a lattice with usually an infinite number of types between NIL and T.
euandreh has quit [Remote host closed the connection]
euandreh has joined #commonlisp
Inline has joined #commonlisp
green_ has joined #commonlisp
Inline has quit [Remote host closed the connection]
Inline has joined #commonlisp
amb007 has joined #commonlisp
justache- is now known as justache
Inline has quit [Ping timeout: 268 seconds]
msavoritias has joined #commonlisp
Inline has joined #commonlisp
occ has quit [Ping timeout: 240 seconds]
karlosz has joined #commonlisp
molson has joined #commonlisp
molson_ has joined #commonlisp
molson_ has quit [Remote host closed the connection]
cage has quit [Remote host closed the connection]
molson_ has joined #commonlisp
molson__ has joined #commonlisp
cage has joined #commonlisp
occ has joined #commonlisp
molson__ has quit [Remote host closed the connection]
molson has quit [Remote host closed the connection]
molson_ has quit [Remote host closed the connection]
molson has joined #commonlisp
molson_ has joined #commonlisp
karlosz has quit [Quit: karlosz]
molson__ has joined #commonlisp
euandreh has quit [Ping timeout: 240 seconds]
molson has quit [Quit: Leaving]
molson_ has quit [Quit: Leaving]
euandreh has joined #commonlisp
molson has joined #commonlisp
euandreh has quit [Ping timeout: 256 seconds]
euandreh has joined #commonlisp
molson_ has joined #commonlisp
Inline has quit [Ping timeout: 268 seconds]
tevo has quit [Read error: Connection reset by peer]
Lycurgus has quit [Quit: Exeunt: personae.ai-integration.biz]
tevo has joined #commonlisp
<beach>
jackdaniel: Did you make a decision about how to crowdfund McCLIM? Like, did you decide that all available crowdfunding sites are out of the question, and perhaps instead you are hoping for the Common Lisp Foundation to set something up?
Krystof has quit [Ping timeout: 268 seconds]
waleee has joined #commonlisp
cosimone has joined #commonlisp
<NotThatRPG>
beach: Related, I wish I knew more about the CLF and its funding. It would be great to have a CL get-together on my side of the pond again (and maybe I can finally get back to ELS in 2024)
<beach>
Are you in North America?
<jackdaniel>
beach: I did not. I think that there are a few alternatives that are not bad but I have not investigated them. regarding clf it did not pan out - as far as I remember gendl__ was working on integrating some kind of a platform, but that was a work in progress (and I could not provide sufficient feedback due to lack of time)
<jackdaniel>
perhaps a good time to ask for money will be after showing something (namely the upcoming release)
<beach>
I see. Thanks.
<jackdaniel>
sure
<jackdaniel>
I think that lem uses opencollective, perhaps that would be not so bad place to converge
<beach>
I'll check it out. Thanks again.
<beach>
I am not planning to ask the Common Lisp Foundation for money. But it might be possible to find someone that is both available and qualified to work on some of the things I am interested in, so then gathering contributions might now be an option.
<beach>
Anyway, I'm off to fix dinner for my (admittedly small) family. I'll be back tomorrow.
<NotThatRPG>
beach: Yes, I am
<NotThatRPG>
beach: good night! I'm off to walk the dogs
Posterdati has quit [Ping timeout: 240 seconds]
foxfromabyss has joined #commonlisp
foxfromabyss has quit [Client Quit]
Posterdati has joined #commonlisp
Posterdati has quit [Ping timeout: 248 seconds]
sjl has joined #commonlisp
tyson2 has quit [Ping timeout: 240 seconds]
Inline has joined #commonlisp
Posterdati has joined #commonlisp
molson__ has quit [Remote host closed the connection]
molson_ has quit [Remote host closed the connection]
molson has quit [Remote host closed the connection]
molson has joined #commonlisp
molson_ has joined #commonlisp
Guest76 has joined #commonlisp
Guest76 has quit [Client Quit]
<Gleefre>
Is there some kind of specification for package local nicknames?
NicknameJohn has quit [Ping timeout: 250 seconds]
slyrus has joined #commonlisp
makomo has joined #commonlisp
NicknameJohn has joined #commonlisp
NicknameJohn has quit [Ping timeout: 240 seconds]
karlosz has joined #commonlisp
cosimone has quit [Ping timeout: 240 seconds]
<jackdaniel>
Gleefre: sbcl documentation is the closest thing to it afaik
<Gleefre>
I see
<Gleefre>
I think a CDR document for PLN would be nice
<Gleefre>
Also it seems that there is a test suite in trivial-package-local-nicknames package
<ixelp>
package local nicknames · nikodemus/SBCL@3c11847 · GitHub
<jackdaniel>
I agree that a cdr document would be nice
<jackdaniel>
you may try to catch phoe - he implemented pln for ccl and kept asking lw and acl until they did that
<jackdaniel>
I think that trivial-package-local-nicknames was made by him
dtman34 has joined #commonlisp
<jackdaniel>
ecl has some non-conformance, but that's a minor thing (if I recall correctly)
<jackdaniel>
it is on the bug tracker
dtman34 has quit [Remote host closed the connection]
<Gleefre>
ecl, abcl, clasp and (free version of) acl all have some issues...
<Gleefre>
jackdaniel: I think it's a good idea, let's try!
<Gleefre>
phoe: What do you think about writing a CDR document for package-local nicknames?
dtman34 has joined #commonlisp
notzmv has joined #commonlisp
<gendl__>
beach: the crowd funding site is up and running and functioning to accept payments but it is very minimal. It needs some content added.
Inline has quit [Ping timeout: 268 seconds]
<gendl__>
Perhaps you or someone like minded could give it a gander. I'd be happy to do a 30 minute screenshare on getting the repo cloned and an instance of the site spun up.