IRC channel logs

2025-06-24.log

back to list of logs

<wingo>rlb: this was the horrible commit i made: https://cgit.git.savannah.gnu.org/cgit/guile.git/commit/?h=wip-whippet&id=b25a743cf98975d733b0dbb14067102aee35d4bc
<wingo>generally speaking i am trying to move away from managing Scheme objects from C via SCM_CELL_OBJECT etc and instead using C struct types
<wingo>there are new inline functions like "scm_to_string" that gives you a "struct scm_string*", giving more type safety and fewer checks; and allowing for access to struct members instead of word offsets
<wingo>i started to write a precise tracer with just word offsets and i saw that it was just going to bitrot into a bug farm. that is when i switched to types and it's been a pretty good experience
<wingo>anyway at some point we will probably need to do the same for the ut8 work
<wingo>of course the scheme compiler emits code that works on word offsets. there will be something to make the C compiler assert that it's placing members at the expected offsets and fail to build otherwise
<wingo>rlb: regarding your comment, that is all correct and good afaiu
<wingo>veqq: i admired guile for its impertinence
<wingo> https://pemberley.com/etext/PandP/chapter60.htm
<wingo>however more seriously it is all a bit random, as things usually are
<wingo>veqq: actually i recalled that i wrote about this! https://wingolog.org/archives/2014/11/27/scheme-workshop-2014
<dsmith>wingo, "bitrot into a bug farm" Love it!
<rlb>wingo: thanks, I'll need to look a that more carefully. And you only converted stringbuf/symbol there -- presumably still need to do som4thing similar for string?
<rlb>wingo: also, offhand, wondered if scm_to_symbol should be scm_i_to_symbol or similar, and/or if scm_symbol should either be scm_i_symbol, or perhaps even in symbols.c, rather than symbols.h. Though in the current utf8 proposal, I just based symbols on strings instead: https://codeberg.org/rlb/guile/commit/9870bd4324508b0bfc9d3c0c889321def3ae4591
<rlb>(and then probably changed things further later)
<veqq>wingo: thank you for finding and linking that!
<veqq>I should also read some Austin.
<mwette>ACTION has released nyacc-2.02.1 https://download.savannah.nongnu.org/releases/nyacc/
<ArneBab>\o/
<mwette>Hey Arne!