IRC channel logs

2026-02-03.log

back to list of logs

<sneek>Yey! tohoyn is back!
<tohoyn>daviid: It looks like the conversion from char* to char** in G-Golf callbacks is a feature of the libffi library. See https://gitlab.com/-/snippets/4930557 for a discussion with ChatGPT about this subject. See also lines 862-863 in https://github.com/libffi/libffi/blob/master/src/x86/ffi64.c.
<tohoyn>daviid: Note that the G-Golf marshaller g-golf-callback-closure-marshal receives interface (object) arguments as doubly referenced pointers, too. For these pointers the Scheme object is computed as follows:
<tohoyn>daviid: 1. g-golf-callback-closure-marshal calls ffi-arg->cb-arg with a pointer to the call stack as an argument.
<tohoyn>daviid: 2. ffi-arg->cb-arg computes ffi-value with type Interface**.
<tohoyn>daviid: 3. %gi-argument->scm computes the actual object (Interface*).
<tohoyn>daviid: please remove the dot after ffi64.c from the second link
<identity>tohoyn: that is why you should put your links in <>s
<tohoyn>daviid: item 3 shall be: %gi-argument->scm computes the pointer with type Interface* from which the Guile object is computed
<tohoyn>identity: ok
<lloda>i think it's a mistake to put pke in boot-9. It should be moved to some module