1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-04-30 11:50:28 +02:00
guile/module/ice-9
Andy Wingo 89ececea95 Better errors for odd-length keyword args
* libguile/vm-i-system.c (bind-kwargs):
* libguile/vm.c (vm_error_kwargs_missing_value):
* libguile/eval.c (error_missing_value)
  (prepare_boot_closure_env_for_apply): Adapt to mirror VM behavior.
* libguile/keywords.c (scm_c_bind_keyword_arguments): Likewise.
* module/ice-9/eval.scm (primitive-eval): Update to error on (foo #:kw)
  with a "Keyword argument has no value" instead of the horrible "odd
  argument list length".  Also adapts to the expected args format for
  the keyword-argument-error exception printer in all cases.  Matches
  1.8 optargs behavior also.
* test-suite/standalone/test-scm-c-bind-keyword-arguments.c (test_missing_value):
  (missing_value_error_handler): Update test.
* test-suite/tests/optargs.test: Add tests.
2017-02-28 21:01:33 +01:00
..
and-let-star.scm Fix SRFI-2 (and-let*) implementation. 2016-06-21 18:04:24 +02:00
arrays.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
binary-ports.scm Implement efficient 'scm_unget_bytes' and 'unget-bytevector'. 2013-04-07 10:14:44 -04:00
boot-9.scm psyntax: Generate identifiers in a deterministic fashion. 2016-12-30 21:58:44 +01:00
buffered-input.scm bugfixes and simplifications to ice-9 buffered-input. 2010-10-05 19:55:37 +02:00
calling.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
ChangeLog-2008
channel.scm deprecate arity access via (procedure-properties proc 'arity) 2010-04-17 16:28:52 +02:00
command-line.scm Bump user-visible copyright years to 2016. 2016-01-06 16:44:39 -05:00
common-list.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
compile-psyntax.scm Minimize size of embedded syntax objects in psyntax-pp.scm 2012-03-03 18:06:59 -05:00
control.scm Add call/ec' and let/ec'. 2013-04-05 22:54:14 +02:00
curried-definitions.scm Provide curried version of define*-public. 2014-07-31 16:05:58 +01:00
debug.scm gut ice-9 debug 2010-07-16 17:35:43 +02:00
deprecated.scm deprecate generalized vectors in favor of arrays 2013-02-18 16:57:15 +01:00
documentation.scm remove program-name, program-documentation 2010-04-17 15:21:08 +02:00
eval-string.scm current-language is a parameter in boot-9 2013-01-22 15:38:04 +01:00
eval.scm Better errors for odd-length keyword args 2017-02-28 21:01:33 +01:00
expect.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
format.scm Micro-optimize (ice-9 format). 2012-08-21 00:36:50 +02:00
ftw.scm scandir: Avoid 'stat' calls on each entry. 2016-10-28 22:17:10 +02:00
futures.scm Add call/ec' and let/ec'. 2013-04-05 22:54:14 +02:00
gap-buffer.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
getopt-long.scm Fix record constructor in getopt-long. 2012-11-08 21:53:36 -05:00
hash-table.scm Add procedures to convert alists into hash tables. 2013-11-18 23:03:38 -05:00
hcons.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
history.scm Use `define-module*' in (ice-9 history). 2010-11-20 00:47:12 +01:00
i18n.scm i18n: 'number->locale-string' guesses the minimum number of decimals. 2017-02-13 21:34:57 +01:00
iconv.scm add read-string and read-string! to (ice-9 rdelim) 2013-01-22 15:15:43 +01:00
lineio.scm remove (ice-9 lineio)'s dependency on (ice-9 readline) 2009-08-18 17:52:46 +02:00
list.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
local-eval.scm psyntax: custom ellipses using 'with-ellipsis' or R7RS syntax-rules. 2014-01-09 17:41:19 -05:00
ls.scm nested module fixen to (ice-9 ls) 2010-04-24 17:42:00 +02:00
mapping.scm deprecate (ice-9 mapping) 2013-02-24 15:11:14 +01:00
match.scm Improve run-time error reporting in (ice-9 match). 2013-08-15 04:07:55 -04:00
match.upstream.scm Improve run-time error reporting in (ice-9 match). 2013-08-15 04:07:55 -04:00
networking.scm Add `getaddrinfo' and related procedures. 2010-02-14 20:56:47 +01:00
null.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
occam-channel.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
optargs.scm more define-syntax-rule usage 2011-09-02 11:36:14 +02:00
poe.scm (ice-9 poe) does not get handles from weak hash tables 2011-05-01 23:01:13 +02:00
poll.scm Improve correctness and consistency of 'eval-when' usage. 2014-01-23 10:41:22 -05:00
popen.scm Improve correctness and consistency of 'eval-when' usage. 2014-01-23 10:41:22 -05:00
posix.scm nanosecond timestamp support in stat and utime 2010-01-17 16:56:34 +01:00
pretty-print.scm Fix truncated-print for uniform vectors 2014-02-07 18:04:20 +01:00
psyntax-pp.scm psyntax: Generate identifiers in a deterministic fashion. 2016-12-30 21:58:44 +01:00
psyntax.scm psyntax: Generate identifiers in a deterministic fashion. 2016-12-30 21:58:44 +01:00
q.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
quasisyntax.scm add quasisyntax 2009-11-14 17:25:12 +01:00
r4rs.scm deprecate close-io-port 2012-03-05 23:52:28 +01:00
r5rs.scm fix some uses of %module-public-interface 2010-04-24 17:43:52 +02:00
r6rs-libraries.scm Improve correctness and consistency of 'eval-when' usage. 2014-01-23 10:41:22 -05:00
rdelim.scm rdelim: Speed up 'read-string' (aka. 'get-string-all'.) 2014-05-28 23:00:20 +02:00
README
receive.scm more define-syntax-rule usage 2011-09-02 11:36:14 +02:00
regex.scm In fold-matches, set regexp/notbol unless matching string start. 2012-09-26 23:46:05 +02:00
runq.scm Remove unused top-level variables. 2010-01-11 01:21:14 +01:00
rw.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
safe-r5rs.scm fix some uses of %module-public-interface 2010-04-24 17:43:52 +02:00
safe.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
save-stack.scm deprecate the-last-stack 2010-06-19 13:43:33 +02:00
scm-style-repl.scm remove evaluator-traps-interface 2010-09-24 18:44:21 +02:00
serialize.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
session.scm better procedure-arguments for interpreted procs with opt, rest, kwargs 2012-07-06 12:19:12 +02:00
slib.scm fix ice-9/slib 2013-01-10 17:30:38 +01:00
stack-catch.scm deprecate save-stack, stack-saved? 2010-06-19 12:57:31 +02:00
streams.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
string-fun.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
syncase.scm deprecated sc-expand in deprecated (ice-9 syncase) 2010-04-07 00:05:34 +02:00
test.scm Placate a number of `syntax-check' verifications. 2012-01-05 23:38:10 +01:00
threads.scm Update `par-map' to use nested futures. 2012-11-21 23:33:30 +01:00
time.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
top-repl.scm current-language is a parameter in boot-9 2013-01-22 15:38:04 +01:00
unicode.scm Add (ice-9 unicode) module 2014-09-29 21:54:14 -04:00
vlist.scm vlist: Remove Texinfo markup from docstrings. 2012-11-27 23:02:15 +01:00
weak-vector.scm Add weak-vector-length, weak-vector-ref, weak-vector-set! 2014-02-07 12:25:05 +01:00

This directory contains various bits of Guile Scheme code.
Most of these are packaged as modules, with foo.scm implementing
the module `(ice-9 foo)'.

The non-module files are:

boot-9.scm	-- loaded on guile startup
		   implements module system + lots of other stuff
arrays.scm	-- loaded by boot-9.scm
networking.scm	-- loaded by boot-9.scm
posix.scm	-- loaded by boot-9.scm
r4rs.scm	-- loaded by boot-9.scm