diff options
Diffstat (limited to 'doc/ref')
-rw-r--r-- | doc/ref/ChangeLog | 3 | ||||
-rwxr-xr-x | doc/ref/scheme-data.texi | 12 |
2 files changed, 15 insertions, 0 deletions
diff --git a/doc/ref/ChangeLog b/doc/ref/ChangeLog index a2b5c613e..f873ed62a 100644 --- a/doc/ref/ChangeLog +++ b/doc/ref/ChangeLog @@ -1,5 +1,8 @@ 2003-04-26 Neil Jerram <neil@ossau.uklinux.net> + * scheme-data.texi (Symbol Primitives): Document scm_str2symbol + and scm_mem2symbol. + * data-rep.texi (Describing a New Type): Clarify that scm_make_smob_type_mfpe is deprecated. (Thanks to tomas@fabula.de.) diff --git a/doc/ref/scheme-data.texi b/doc/ref/scheme-data.texi index d26ce7cae..125592df8 100755 --- a/doc/ref/scheme-data.texi +++ b/doc/ref/scheme-data.texi @@ -2692,6 +2692,18 @@ the case-sensitivity of symbols: (string->symbol "K. Harper, M.D."))) @result{} #t @end lisp +From C, there are lower level functions that construct a Scheme symbol +from a null terminated C string or from a sequence of bytes whose length +is specified explicitly. + +@deffn {C Function} scm_str2symbol (const char * name) +@deffnx {C Function} scm_mem2symbol (const char * name, size_t len) +Construct and return a Scheme symbol whose name is specified by +@var{name}. For @code{scm_str2symbol} @var{name} must be null +terminated; For @code{scm_mem2symbol} the length of @var{name} is +specified explicitly by @var{len}. +@end deffn + Finally, some applications, especially those that generate new Scheme code dynamically, need to generate symbols for use in the generated code. The @code{gensym} primitive meets this need: |