Hi David, David Kastrup <d...@gnu.org> skribis:
> In Scheme, symbols can be compared using eq? for equality. However, > since they have garbage-collected content attached, they do not meet the > predicate SCM_IMP in the short-circuit evaluation at the start of equal? > This means that unequal symbols compared using equal? fall through a > whole bunch of tests and end up in a general structural comparison > comparing their underlying string names. ‘equal?’ starts by checking for eq-ness, which LGTM: SCM scm_equal_p (SCM x, SCM y) #define FUNC_NAME s_scm_i_equal_p { SCM_CHECK_STACK; tailrecurse: SCM_TICK; if (scm_is_eq (x, y)) return SCM_BOOL_T; Or were you referring to something else? Thanks, Ludo’.