I wrote a few words for scm_set_program_arguments, which is mentioned under scm_boot_guile but not otherwise described.
-- C Function: void scm_set_program_arguments (int argc, char **argv, char *first) Set the list of command line arguments to be returned by `program-arguments' and `command-line' above. ARGV is an array of null-terminated strings, as in a C `main' function. ARGC is the number of strings in ARGV, or if it's negative then a `NULL' entry in ARGV marks the end. FIRST is an extra string put at the start of the arguments, or `NULL' for no such extra. This is a convenient way to pass the program name after advancing ARGV to strip option arguments or similar. { char *progname = argv[0]; int i; for (i = 1; i < argc && argv[i][0] == '-'; i++) { /* munch option ... */ } /* remaining args for scheme level use */ scm_set_program_arguments (-1, argv+i, progname); } This sort of thing is often done at startup under `scm_boot_guile' and similar. The given strings are all copied, so the C data is not accessed again once `scm_set_program_arguments' returns. _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel