1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-01 12:20:26 +02:00
Commit graph

1871 commits

Author SHA1 Message Date
Neil Jerram
0b452f2c53 Confront the MOP
* doc/ref/goops.texi (The Metaobject Protocol): Bring forward to
  before `Class Options', and add intro text to explain why.  All of
  the sections now remaining are ones where the MOP is more likely to
  be relevant than not.
2011-01-14 21:53:37 +00:00
Neil Jerram
12fe9fcf51 Move GOOPS Error Handling' to after Introspection'
* doc/ref/goops.texi (GOOPS Error Handling): Move to just after
  `Introspection'.
2011-01-14 21:23:54 +00:00
Neil Jerram
9320479a18 Move Handling Slot Access Errors' inside Accessing Slots'
* doc/ref/goops.texi (Accessing Slots): Move `Handling Slot Access
  Errors' here; update relevant references.
2011-01-14 21:19:51 +00:00
Neil Jerram
2cb8cf04b9 Merge small sections into `GOOPS Object Miscellany'
* doc/ref/goops.texi (GOOPS Object Miscellany): New section, combining
  previous `Object Comparison', `Cloning Objects' and `Write and
  Display'.  Replace `Object Comparison' text with something that
  makes sense.  Add a snippet to the end of the write/display section.
2011-01-14 20:34:41 +00:00
Neil Jerram
5f9b75a355 Remove content-free `Generic Functions and Accessors'
* doc/ref/goops.texi (GOOPS): Remove `Generic Functions and
  Accessors'.  There was nothing here that wasn't better covered
  elsewhere.
2011-01-14 20:10:33 +00:00
Neil Jerram
3617da95ab Move Accessing Slots' inside Introspection'.
* doc/ref/goops.texi (Introspection): Move `Accessing Slots' into
  here, and flatten it, except for `Handling Slot Access Errors'.
  (GOOPS Error Handling): Move `Handling Slot Access Errors' here.
2011-01-14 20:06:34 +00:00
Neil Jerram
c7b154588b Reorder `Introspection'
* doc/ref/goops.texi (Instances): Move `Instances' before `Slots', as
  it feels more important.
2011-01-14 20:03:34 +00:00
Neil Jerram
dc08a490e3 Edit `Introspection'
* doc/ref/goops.texi (Introspection): Make a bit snappier.
  (Classes): Add intro.  Remove "the" and "metaobject" everywhere.
  Remove `class-environment', since I don't know what it's useful for.
  (Instances): Remove implementation notes.
  (Built-in classes): Merge with `Instances'.  Reorder text points.
  (Generic Functions): Add intro.  Remove "the" and "metaobject"
  everywhere.
  (Generic Function Methods): Merge with `Generic Functions'.
2011-01-14 19:45:38 +00:00
Neil Jerram
62d7cba3d5 Move `Introspection' earlier
* doc/ref/goops.texi (Introspection): Move to after `Generic Functions
  and Methods'.  The idea is to have all of that sections that make
  sense without needing to understand the MOP, before sections that
  really depend on the MOP.
2011-01-14 19:08:46 +00:00
Neil Jerram
68f4fee187 Improve doc on generic functions and inheritance
* doc/ref/goops.texi (Methods and Generic Functions): More explanation
  of generic function invocation.  Created (or moved) subsections here
  to cover material on the following that was previously spread elsewhere:
  accessors; extending primitives; merging generics; generic function
  examples; handling invocation errors.  Edited for clarity throughout.
  (Generic functions and methods, Example): Nodes deleted, with their
  material incorporated above.
  (Class Precedence List): Edited to improve clarity.
  (Sorting Methods): New subsection.
2011-01-12 23:42:40 +00:00
Andy Wingo
2e6f5ea4cd web.texi defun -> deffn
* doc/ref/web.texi (URIs): Change instances of @defun to @deffn with
  {Scheme Procedure}.
2011-01-10 22:44:41 -08:00
Andy Wingo
f4ec6877bb more web.texi foo
* doc/ref/web.texi (Web Server, Web Examples): Update.
2011-01-10 22:44:41 -08:00
Andy Wingo
de54fb6d5e update web.text documentation for requests and responses
* doc/ref/web.texi (Requests, Responses): Update, and add a note on
  character encodings.
2011-01-10 22:44:41 -08:00
Andy Wingo
ff8339db69 update web.texi for (web http) changes
* doc/ref/web.texi (HTTP Headers): Update to reflect current code, and
  to reformat. Not sure if it's an improvement...
2011-01-10 09:32:26 -08:00
Andy Wingo
32de1aa783 update (web http) docs
* doc/ref/web.texi (HTTP): Update docs to correspond with current code.
2011-01-08 15:20:28 -08:00
Andy Wingo
58baff08bc revert unfinished web.texi changes
These were prematurely committed in
17072fd2c6.
2011-01-07 09:31:36 -08:00
Andy Wingo
17072fd2c6 lookup_interned_symbol uses get_handle_by_hash
* libguile/symbols.c (lookup_interned_symbol): Change to use
  scm_hash_fn_get_handle_by_hash.
2011-01-07 09:18:37 -08:00
Andy Wingo
929ccf48fc read-header returns EOF at end, update (web http) docs
* doc/ref/web.texi (HTTP): Add an example for declaring a header, and
  adapt to read-header change.

* module/web/http.scm (read-header): Return EOF for both values if there
  are no more headers, instead of #f.
  (read-headers): Adapt.
2011-01-07 09:18:36 -08:00
Andy Wingo
569269b4b2 update URI documentation
* doc/ref/web.texi (Types and the Web): Fix spacing.
  (URIs): Give default values, and clarify a number of procedure docs.
  Update "encoding" name, and string->uri name.
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
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
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
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
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
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
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
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
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
Andy Wingo
1148d02973 add section on format of parsed http headers
* doc/ref/web.texi (HTTP Headers): New section. Needs some examples,
  though.
2010-12-16 19:06:41 +01:00
Andy Wingo
ac7f17e3ca fix web.texi
* doc/ref/web.texi: Texinfo syntax fixen!
2010-12-16 16:44:44 +01:00
Andy Wingo
299cd1a229 update web.texi
* doc/ref/web.texi (URIs, HTTP): Update these sections.
2010-12-16 16:43:01 +01:00
Andy Wingo
8db7e0947d add web.texi to manual
* doc/ref/web.texi: New file, here to document the various (web ...)
  modules.  Quite a rough beginning, but it is a start...

* doc/ref/guile.texi:
* doc/ref/Makefile.am: Add to manual.
2010-12-16 14:52:25 +01:00
Ludovic Courtès
51fc066ae2 Use `current-processor-count' to determine the number of future-workers.
* module/ice-9/futures.scm (%worker-count): Use
  `current-processor-count'.

* doc/ref/api-scheduling.texi (Futures): Add note about side-effects and
  I/O.  Mention `current-processor-count'.
2010-12-07 23:13:20 +01:00
Ludovic Courtès
f0c0141fe4 Add total-processor-count' and current-processor-count'.
* libguile/posix.c (scm_total_processor_count,
  scm_current_processor_count): New functions.

* libguile/posix.h (scm_total_processor_count,
  scm_current_processor_count): New declarations.

* test-suite/tests/posix.test ("nproc"): New test prefix.

* doc/ref/posix.texi (Processes): Document `total-processor-count' and
  `current-processor-count'.
2010-12-07 23:13:20 +01:00
Ludovic Courtès
3ae78cac88 Improve doc of getaffinity' and setaffinity'.
* doc/ref/posix.texi (Processes): Add cross-reference from `setaffinity'
  and `getaffinity' to the corresponding node in the glibc manual.

* libguile/posix.c (scm_getaffinity, scm_setaffinity): Likewise.
2010-12-07 23:13:20 +01:00
Neil Jerram
4431a337f0 Put `figures' into standard texinfo form
* doc/ref/goops.texi (Example, Inheritance): Remove unnecessary figure
  references.  Use @float and @ref.
  (Class precedence list): Ditto.
2010-12-06 23:02:12 +00:00
Neil Jerram
f60a835300 Merge tutorial' and reference' treatments of the same basic GOOPS
material

* doc/ref/goops.texi (GOOPS): Move use of (oop goops) here.

  (Class Definition): Merged with `Defining New Classes'

  (Instance Creation): Insert before covering slot options.  Merge in
  material from `Creating Instances'.

  (Slot Options): Merged some better wording and index entries from
  the tutorial version.

  (Slot Description Example): New node, containing the <my-complex>
  material from the tutorial.

  (Methods and Generic Functions, Inheritance): Tutorial sections
  moved into main line of the manual.

* doc/ref/goops-tutorial.texi: Nothing left here now.
2010-12-06 22:28:39 +00:00
Neil Jerram
1dc43d57cc Minor textual markups
* doc/ref/goops-tutorial.texi (Class definition): No reason to assume
  particular familiarity with CLOS.
  (Instance creation and slot access): Remove a couple of words.
2010-12-06 20:26:48 +00:00
Andy Wingo
e7fb779fb0 update read-delimited! docs
* doc/ref/api-io.texi (Line/Delimited): Update the read-delimited!
  docs.
2010-12-06 15:19:40 +01:00
Ludovic Courtès
0d4e6ca38f Add `(ice-9 futures)'.
* doc/ref/api-scheduling.texi (Threads): Add short introduction.
  Mention the `threads' feature.  Add cross-reference to futures.
  (Futures): New node.

* module/Makefile.am (ICE_9_SOURCES): Add `ice-9/futures.scm'.

* module/ice-9/futures.scm: New file.

* test-suite/Makefile.am (SCM_TESTS): Add `tests/future.test'.

* test-suite/tests/future.test: New file.
2010-12-03 00:38:29 +01:00
Ludovic Courtès
fe613fe25d Add bindings to GNU sched_setaffinity' and sched_getaffinity'.
* configure.ac: Add checks for `sched_setaffinity' and
  `sched_getaffinity'.

* doc/ref/posix.texi (Processes): Document `getaffinity' and
  `setaffinity'.

* libguile/posix.c (cpu_set_to_bitvector,
  scm_getaffinity)[HAVE_SCHED_GETAFFINITY]: New functions.
  (scm_setaffinity)[HAVE_SCHED_SETAFFINITY]: New function.

* libguile/posix.h (scm_getaffinity, scm_setaffinity): New declarations.

* test-suite/tests/posix.test ("affinity"): New test prefix.
2010-12-03 00:38:29 +01:00
Andreas Rottmann
8fdd85f834 Allow user-defined meta-commands
Besides allowing user-defined meta-commands, this change also refactors
the meta-command machinery to split reading a command's arguments from
the procedure actually implementing it, and hence allows nesting
meta-commands.  As an example of such a command, ",in" is added as a new
meta-command.

* module/system/repl/command.scm: Export `define-meta-command'.
  (*command-module*): Replaced by the hash table `*command-infos*'.
  (command-info, make-command-info, command-info-procedure)
  (command-info-arguments-reader): New procedures, encapsulating the
  information about a meta-command.
  (command-procedure): Adapted to use the `command-info' lookup
  procedure.
  (read-command-arguments): New auxiliary procedure invoking a command's
  argument reader procedure.
  (meta-command): Adapted to the split of reading arguments and
  executing a command.
  (add-meta-command!): New auxiliary procedure, registers a meta
  command's procedure and argument reader into `*command-infos* and
  `*command-table*.
  (define-meta-command): Extended to allow specification of the command's
  category; split the argument reader and actual command procedure.
  (guile:apropos, guile:load, guile:compile-file, guile:gc): Remove these
  aliases, they are unnecessary as we now use a hash table instead of the
  module to store the commands.
  (in): New meta-command, which evaluates an expression, or alternatively
  executes another meta-command, in the context of a specific module.
* doc/ref/scheme-using.texi (Module Commands): Document the `in'
  meta-command.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2010-11-20 23:55:19 +01:00
Andreas Rottmann
b710608c87 Allow specifying load extensions on the command line
Add a new command-line switch `-x', which manipulates the
%load-extensions list.

* libguile/script.c (scm_compile_shell_switches): Process the new "-x"
  switch.
  (scm_shell_usage): Mention the "-x" switch.
* doc/ref/scheme-scripts.texi (Invoking Guile): Add "-x" switch to the
  list of command-line switches.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2010-11-20 01:11:23 +01:00