summaryrefslogtreecommitdiff
path: root/libguile/eval.c
diff options
context:
space:
mode:
authorGreg J. Badros <gjb@cs.washington.edu>1999-12-13 03:40:23 +0000
committerGreg J. Badros <gjb@cs.washington.edu>1999-12-13 03:40:23 +0000
commit4079f87ed21341a8654ecaa29ac3e6a2344d9252 (patch)
treed9381ae0256c3daae81acde78bf40d1d12cd12e5 /libguile/eval.c
parent75948d1b314685312f8d62315c4bec6bd003fca4 (diff)
downloadguile-4079f87ed21341a8654ecaa29ac3e6a2344d9252.tar.gz
* Makefile.am: Fix ETAGS_ARGS to recognize GUILE_PROC,
GUILE_PROC1. Build guile-procedures.txt, and add that file to pkgdata_DATA. * load.c: Added `pkgdata-dir', `site-dir', `library-dir' primitives. * guile-doc-snarf.awk: Drop trailing space when no arguments: e.g., "(foo )" is now "(foo)". * *.c: moved all the documentation for primitives from guile-doc/ref/{appendices,posix,scheme}.texi into the source code. This leaves about half of the primitives undocumented. Also, all the markup is currently still texinfo. I don't have a problem with texinfo per se, but the markup is not very descriptive or accurate.
Diffstat (limited to 'libguile/eval.c')
-rw-r--r--libguile/eval.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/libguile/eval.c b/libguile/eval.c
index 7044dda0f..a27b99868 100644
--- a/libguile/eval.c
+++ b/libguile/eval.c
@@ -3725,7 +3725,8 @@ GUILE_PROC(scm_force, "force", 1, 0, 0,
GUILE_PROC (scm_promise_p, "promise?", 1, 0, 0,
(SCM x),
-"")
+"Return true if @var{obj} is a promise, i.e. a delayed computation
+(@pxref{Delayed evaluation,,,r4rs.info,The Revised^4 Report on Scheme}).")
#define FUNC_NAME s_scm_promise_p
{
return SCM_BOOL(SCM_NIMP (x) && (SCM_TYP16 (x) == scm_tc16_promise));
@@ -3751,7 +3752,11 @@ GUILE_PROC (scm_cons_source, "cons-source", 3, 0, 0,
GUILE_PROC (scm_copy_tree, "copy-tree", 1, 0, 0,
(SCM obj),
-"")
+"Recursively copy the data tree that is bound to @var{obj}, and return a
+pointer to the new data structure. @code{copy-tree} recurses down the
+contents of both pairs and vectors (since both cons cells and vector
+cells may point to arbitrary objects), and stops recursing when it hits
+any other object.")
#define FUNC_NAME s_scm_copy_tree
{
SCM ans, tl;
@@ -3795,7 +3800,9 @@ scm_eval_3 (SCM obj, int copyp, SCM env)
GUILE_PROC(scm_eval2, "eval2", 2, 0, 0,
(SCM obj, SCM env_thunk),
-"")
+"Evaluate @var{exp}, a Scheme expression, in the environment designated
+by @var{lookup}, a symbol-lookup function. @code{(eval exp)} is
+equivalent to @code{(eval2 exp *top-level-lookup-closure*)}.")
#define FUNC_NAME s_scm_eval2
{
return scm_eval_3 (obj, 1, scm_top_level_env (env_thunk));
@@ -3804,7 +3811,8 @@ GUILE_PROC(scm_eval2, "eval2", 2, 0, 0,
GUILE_PROC(scm_eval, "eval", 1, 0, 0,
(SCM obj),
-"")
+"Evaluate @var{exp}, a list representing a Scheme expression, in the
+top-level environment.")
#define FUNC_NAME s_scm_eval
{
return scm_eval_3 (obj,