IRC channel logs

2022-03-25.log

back to list of logs

<chrislck>sneek: botsnack
<sneek>:)
***sneek_ is now known as sneek
<sneek>Welcome back chrislck :)
***alMalsamo is now known as lumberjack123
<dsmith-work>Happy Friday, Guilers!!
<tricon>happy friday, indeed.
<samplet>I’m reading the Guile manual, and it says that for variables, “bound” means it has a name (in a module, say), and “defined” means it has a value. However, the ‘variable-bound?’ predicate checks if a variable has a value! Am I misunderstanding the manual?
<civodul>samplet: hi! in everyday parlance, "bound variable" means it has a value; first-class variables are kinda internal
<civodul>i guess there are two levels of discourse, depending on whether or not you're considering first-class variables
<samplet>The manual says “we will try to be clear about the difference [between bound and defined] and explain any confusion where it is unavoidable.” It then introduces ‘variable-bound?’ without comment. I agree that the terms get overloaded normally, but the manual goes to such an effort to explain the difference. I was ready to go along with its definitions. :)
<civodul>sounds like something that should be fixed, then :-)
<civodul>i used 'module-variable' when i want to check for the existence of a variable, with or without a value
<civodul>i didn't know about 'variable-bound?'
<samplet>My understanding is that ‘variable-bound?’ is essentially ‘(not (eq? (variable-ref v) *undefined*))’.
<samplet>It should probably be called ‘variable-defined?’ or ‘variable-set?’ to match ‘variable-unset!’.
***dongcarl1 is now known as dongcarl
<samplet>I don’t like the ring of ‘variable-undefine!’....
*samplet is working on modules in Mes, and thinking altogether too much about first-class variables
<samplet> https://git.savannah.gnu.org/cgit/guile.git/tree/libguile/variable.c?h=release_1-8-8#n113
<samplet>(From Guile 1.8.)
<civodul>memories...
<civodul>i agree with you, 'variable-set?' or similar sounds like a more accurate name
***robin_ is now known as robin
<wingo>moo
<m455>blep
<spk121>.