Andy Wingo
8745c33afb
rename string->uri and uri->string.
...
* module/web/uri.scm (string->uri, uri->string): Rename from parse-uri
and unparse-uri.
* test-suite/tests/web-uri.test:
* module/web/http.scm: All callers changed.
2011-01-07 09:18:36 -08:00
Andy Wingo
b3f9444892
clarify uri fragment discussion
...
* doc/ref/web.texi (URIs): Clarify the discussion of URI fragments.
2011-01-07 09:18:36 -08:00
Andy Wingo
d75a81b128
rewrite web.texi intro
...
* doc/ref/web.texi (Web): Rewrite the intro.
(Types and the Web): New subsection, a mini-rant.
2011-01-07 09:18:36 -08:00
Ludovic Courtès
8a41c56af1
Tiny style improvement in the ECMAScript compiler.
...
Followup to 8891bd1b16
("Fix ECMAScript
object creation.").
* module/language/ecmascript/compile-tree-il.scm (comp): Use `@implv'
for `new-object'. Suggested by Kan-Ru Chen <kanru@kanru.info>.
2011-01-05 22:22:15 +01:00
Ludovic Courtès
66d8613108
Change getaddrinfo' test to handle the GNU-specific
EAI_NODATA'.
...
* doc/ref/posix.texi (Network Databases): Mention `EAI_NODATA'.
* libguile/net_db.c (scm_getaddrinfo): Likewise for the docstring.
* test-suite/tests/net-db.test ("getaddrinfo")["no name"]: Handle
`EAI_NODATA'.
2011-01-05 22:17:26 +01:00
Noah Lavine
8891bd1b16
Fix ECMAScript object creation.
...
* module/language/ecmascript/compile-tree-il.scm (compile-tree-il):
generate correct tree-il for construction of new objects.
* test-suite/tests/ecmascript.test (ecompile): Add pattern with EXPECTED
omitted.
("compiler"): test whether we generate new objects correctly.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2011-01-04 18:36:58 +01:00
Ludovic Courtès
9dfcd9e2d6
Document `scm_misc_error' (bug #31969 ).
...
* doc/ref/api-control.texi (Handling Errors): Add `scm_misc_error'.
Suggested by Bake Timmons <b3timmons@speedymail.org> (bug #31969 ).
2011-01-04 18:29:55 +01:00
Ludovic Courtès
bf7c2e964e
Improve doc of string-index',
string-index-right', and `string-rindex'.
...
Suggested by Noah Lavine <noah.b.lavine@gmail.com>.
* doc/ref/api-data.texi (String Searching): Mention the return value of
`string-index', `string-index-right', and `string-rindex' when no
match is found.
* libguile/srfi-13.c (scm_string_index, scm_string_index_right,
scm_string_rindex): Adjust docstring accordingly.
2011-01-04 18:08:58 +01:00
Neil Jerram
03f6e5ed4c
Manual typo fix
...
* doc/ref/api-overview.texi (API Overview): bot -> but
2010-12-23 12:17:26 +00:00
Ludovic Courtès
8aa47f2609
Have lookahead-u8' and
get-u8' actually do binary input.
...
* libguile/r6rs-ports.c (scm_lookahead_u8): Use `scm_get_byte_or_eof'
instead of `scm_peek_char'.
(scm_get_u8): Likewise.
* test-suite/tests/r6rs-ports.test ("7.2.8 Binary
Input")["lookahead-u8"]: Fix typo.
["lookahead-u8 non-ASCII"]: New test.
2010-12-21 00:50:22 +01:00
Ludovic Courtès
829ed325cf
Temporarily fix unistr.in.h' to allow compilation with
-Wundef'.
...
See <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/24225 > for details.
* lib/unistr.in.h: Change #if's into #ifdef's.
2010-12-20 22:54:39 +01:00
Ludovic Courtès
ab4d62adbf
Update Gnulib to v0.0-4544-gce083ca.
2010-12-20 22:51:46 +01:00
Andy Wingo
b90b4b2bf2
format handles ~@c better
...
* module/ice-9/format.scm (format): Fix ascii-ism in ~@c. Pull
flush-output? into the let*.
2010-12-18 13:13:16 +01:00
Andy Wingo
79f124ac87
more format tweaks
...
* module/ice-9/format.scm (format): Strip format: prefix from port and
output-col.
2010-12-18 13:02:07 +01:00
Andy Wingo
8390dac023
more format tweaks
...
* module/ice-9/format.scm (format): Move the port and output-col to let*
vars, again removing a set!. We will probably move more state vars to
the let*, to let the procedures exist in a more fixed-point style.
2010-12-18 12:57:29 +01:00
Andy Wingo
0e9306801a
take advantage of letrec* in format
...
* module/ice-9/format.scm (format): Take advantage of letrec* internal
expansion, and so have fewer set! invocations.
2010-12-18 12:50:00 +01:00
Andy Wingo
d55066ddc3
inline format:out into format
...
* module/ice-9/format.scm (format): Inline format:out into the body.
2010-12-18 12:42:50 +01:00
Andy Wingo
098e6fc63f
more format cleanups
...
* module/ice-9/format.scm (format): Remove the need to save a copy of
the incoming arguments, because they are available as local
variables. Do the check early for the format-string actually being a
string.
2010-12-18 12:32:14 +01:00
Andy Wingo
f02f8a6174
format's first arg is "destination"
...
* module/ice-9/format.scm: The argument to format is "destination", not
"port". Fix this newly reintroduced buglet.
2010-12-18 12:20:26 +01:00
Andy Wingo
3d56118c50
inline format:format into format
...
* module/ice-9/format.scm (format): Inline format:format body.
2010-12-18 12:17:46 +01:00
Andy Wingo
2ce77e6cf6
deprecate omission of port to ice-9 format
...
* module/ice-9/format.scm (format): Add port and format-string as formal
arguments. Seems also to have triggered a reindent. Formally
deprecate omitting the port, as it's usually an error.
* test-suite/tests/format.test ("format basic output")
("format basic output", "~{ iteration"): Fix up tests that omitted the
destination port.
2010-12-18 12:06:53 +01:00
Andy Wingo
29d096c8e6
letrec -> internal definitions in format.scm
...
* module/ice-9/format.scm (format): Change from letrec to internal
definitions, and use the define (foo ...) .. shorthand. No semantic
change.
2010-12-18 11:44:57 +01:00
Andy Wingo
9ebf1af3c1
format.scm cleanups
...
* module/ice-9/format.scm (format:symbol-case-conv)
(format:iobj-case-conv): Remove these exports, they were not used.
(format:expch): Remove this one, though it was used.
(format:floats, format:complex-numbers, format:radix-pref): Inline
these "configuration variables" into the format body.
2010-12-18 11:27:19 +01:00
Andy Wingo
e3e3394374
ice-9 format license update
...
* module/ice-9/format.scm: A more standard copyright header, with
LGPLv3+ instead of public domain. Update define-module block.
2010-12-18 11:21:29 +01:00
Ludovic Courtès
7bc8b4afa2
Bump version number for 1.9.14.
...
* GUILE-VERSION (GUILE_MICRO_VERSION): Increment.
2010-12-17 21:57:19 +01:00
Ludovic Courtès
831ed60ddb
Tweak `NEWS'.
...
* NEWS: Update.
2010-12-17 21:55:56 +01:00
Ludovic Courtès
90b2c69c97
futures: Store pending futures in a queue.
...
* module/ice-9/futures.scm (%futures): Change from a list to a queue.
(register-future!, process-futures, touch): Adjust accordingly.
(unregister-future!): Remove.
2010-12-17 21:55:56 +01:00
Ludovic Courtès
3e0e4f1d87
Clarify doc regarding threading of par-map' and
par-for-each'.
...
* doc/ref/api-scheduling.texi (Parallel Forms): Refine wording for
`par-map' and `par-for-each'.
2010-12-17 21:55:56 +01:00
Andy Wingo
863f11969d
add www-commit rule in doc/ref
...
* doc/ref/Makefile.am (www-commit): Add rule to update docs on web site.
2010-12-17 16:41:58 +01:00
Ludovic Courtès
6bf623ca34
Remove conflicting `scm_is_string' declaration.
...
* libguile/strings.h: Move `scm_is_string' declaration...
* libguile/inline.h: ... here.
Reported by Noah Lavine <noah.b.lavine@gmail.com>.
2010-12-17 14:34:22 +01:00
Andy Wingo
133ef660af
fix unbound fluid tests
...
* test-suite/tests/fluids.test: Fix tests.
2010-12-17 13:53:29 +01:00
Andy Wingo
27e346064e
update NEWS
...
* NEWS: Update.
2010-12-17 13:33:29 +01:00
Andy Wingo
7cf64a0af1
guile-user has no filename
...
* module/ice-9/boot-9.scm (guile-user): Set #:filename to #f for
guile-user module, as guile-user isn't really associated with any
file.
2010-12-17 13:30:07 +01:00
Andy Wingo
cdab9fc625
add ,reload meta-command and document it and reload-module
...
* module/ice-9/boot-9.scm (reload-module): Add docstring.
* module/system/repl/command.scm (reload): New meta-command.
* doc/ref/scheme-using.texi (Module Commands): Document the ,reload
meta-command.
* doc/ref/api-modules.texi (Module System Reflection): Document
reload-module.
2010-12-17 13:27:43 +01:00
Andy Wingo
626e36e5cb
document variable-unset!
...
* doc/ref/api-modules.texi (Variables): Document variable-unset!.
* NEWS: Update.
2010-12-17 13:16:36 +01:00
Andy Wingo
d09c07fb10
document make-unbound-fluid et al
...
* doc/ref/api-scheduling.texi (Fluids and Dynamic States): Document the
new fluid routines.
* NEWS: Update.
2010-12-17 13:14:13 +01:00
Andy Wingo
e01163b5f1
rename make-undefined-fluid to make-unbound-fluid
...
* libguile/fluids.c (scm_make_unbound_fluid): Rename from
scm_make_undefined_fluid.
* libguile/fluids.h:
* module/language/elisp/runtime.scm: Update referrers.
2010-12-17 13:10:03 +01:00
Andy Wingo
60905b80d4
multicast manual updates
...
* doc/ref/posix.texi (Network Sockets and Communication): Add
IP_MULTICAST_TTL and IP_MULTICAST_IF docs, from the docstring.
* NEWS: Update.
2010-12-17 13:04:23 +01:00
Andy Wingo
5cdab8b8f6
more web.texi "hacking"
...
* doc/ref/web.texi (Web Server, Web Examples): Finish these sections.
2010-12-17 12:58:43 +01:00
Andy Wingo
e2d4bfea00
build-response validates headers
...
* module/web/response.scm (build-response): Add some validation, like
for build-request.
2010-12-17 12:01:34 +01:00
Ludovic Courtès
c21a5ddcaf
Implement `(ice-9 threads)' high-level constructs in terms of futures.
...
* module/ice-9/threads.scm (parallel, par-mapper): Rewrite in terms of
`future' and `touch'.
* test-suite/tests/threads.test ("par-map", "par-for-each"): New test
prefixes.
* doc/ref/api-scheduling.texi (Parallel Forms): Add cross-ref to
futures. Recommend against the `n-' variants.
2010-12-16 23:45:24 +01:00
Ludovic Courtès
6c17f7bd71
futures: Support multiple-value returns.
...
* module/ice-9/futures.scm (process-future!): Use `call-with-values'
when invoking `(future-thunk future)'.
* test-suite/tests/future.test ("futures")["multiple values"]: New test.
2010-12-16 23:45:24 +01:00
Ludovic Courtès
691a1c3c06
futures: Fix potential deadlock.
...
* module/ice-9/futures.scm (process-futures): Fix potential deadlock,
whereby %FUTURES-MUTEX would be acquired *after* FUTURE's mutex.
2010-12-16 23:45:24 +01:00
Ludovic Courtès
70249b9857
Rehash weak hash tables less frequently.
...
* libguile/hashtab.c (weak_bucket_assoc): Call `scm_i_rehash' only when
REMAINING is below `SCM_HASHTABLE_LOWER (table)'.
2010-12-16 23:45:23 +01:00
Ludovic Courtès
3854d5fd23
Fix `hash' for pointer objects.
...
Previously all pointer objects would hash to the same value.
* libguile/hash.c (scm_hasher): Add case for `scm_tc7_pointer'.
2010-12-16 23:45:23 +01:00
Ludovic Courtès
183f784947
Inline `scm_is_string'.
...
* libguile/strings.c (scm_is_string): Move to...
* libguile/inline.h (scm_is_string): ... here. Inline.
2010-12-16 23:45:23 +01:00
Ludovic Courtès
18f06db925
Add compose',
negate', and `const'.
...
* module/ice-9/boot-9.scm (compose, negate, const): New procedures.
* doc/ref/api-procedures.texi (Higher-Order Functions): New node.
* test-suite/Makefile.am (SCM_TESTS): Add `tests/procs.test'.
* test-suite/tests/procs.test: New file.
2010-12-16 23:45:23 +01:00
Andy Wingo
0bfba83a03
update web-response tests for http header parsing change
...
* test-suite/tests/web-response.test ("example-1"): Update for change in
parsing Vary header.
2010-12-16 19:38:48 +01:00
Andy Wingo
92022c447d
update NEWS
...
* NEWS: Update for Web documentation.
2010-12-16 19:33:16 +01:00
Andy Wingo
e471a3ee2f
more web.texi work
...
* doc/ref/web.texi (Requests, Responses): Flesh out.
(Web Examples): New section, replacing "Web Handlers". The only one
that's not really written yet.
2010-12-16 19:31:50 +01:00