This is the mail archive of the
guile@sourceware.cygnus.com
mailing list for the Guile project.
Re: Names in libguile
> If there's a C variant of something provided at the Scheme level
> (like the current scm_internal_dynamic_wind), it has the prefix
> scm_c_ instead of scm_.
>
> this is the only one i don't understand. why is it important to
> reflect the origin of the definition?
A function named scm_c_FOO serves the same purpose as the function
named scm_FOO, except that its interface is tailored for use from C,
while scm_FOO is tailored for use from Scheme, and is probably
exported as a Scheme primitive.
For example, scm_FOO might expect Scheme procedures as arguments,
while scm_c_FOO might take C function pointers and a passthrough
value.