1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-07 18:30:25 +02:00
Commit graph

1392 commits

Author SHA1 Message Date
Andy Wingo
b09179d0eb remove documentation on autofrisk foo
* doc/ref/autoconf.texi: Remove documentation on autofrisk facility,
  given that we do not ship those macros, and to my knowledge, never
  have.
2011-10-12 11:51:33 +02:00
Andy Wingo
ec81143964 add (web client) docs
* doc/ref/web.texi (Web Client): New doc section.
2011-10-12 11:24:58 +02:00
Andy Wingo
d62dd76685 add ,expand and ,optimize
* module/system/repl/command.scm (*command-table*, expand, optimize):
  New meta-commands.
* module/system/repl/common.scm (repl-expand, repl-optimize): New
  helpers.

* doc/ref/scheme-using.texi (Compile Commands): Document.
2011-10-10 17:01:11 +02:00
Mike Gran
022dda6901 New functions scm_is_exact and scm_is_inexact
* doc/ref/api-data.texi (Exact and Inexact Numbers): doc for scm_is_exact
  and scm_is_inexact
* libguile/numbers.c (scm_is_exact, scm_is_inexact): new functions
* libguile/numbers.h: declarations for scm_is_exact and scm_is_inexact
* test/suite/standalone/test-conversion.c (test_is_exact, test_is_inexact):
  new tests
2011-10-09 20:54:37 -07:00
Mike Gran
b2c4c3e5e3 Document SCM_ASSERT_TYPE and SCM_ASRTGO macros
* doc/ref/api-control.texi (Signalling Type Errors): document macros
2011-10-08 17:12:12 -07:00
Ludovic Courtès
58b5a2d4e1 doc: (ice-9 match) doesn't have `__1'.
* doc/ref/match.texi (Pattern Matching): Remove `__1', which doesn't
  exist.  Thanks to Chris K. Jester-Young.
2011-09-27 18:00:20 +02:00
Ludovic Courtès
7a1e193710 doc: Update (ice-9 match) reference.
* doc/ref/match.texi (Pattern Matching): Document `***', `..1', and
  `__1'; remove `..k' and `__k'.  Reported by Chris K. Jester-Young.
2011-09-27 13:46:35 +02:00
Ludovic Courtès
7af1ba2f6c doc: Fix typesetting of function definitions in "Accessing Modules from C".
* doc/ref/api-modules.texi (Accessing Modules from C): Use the phrase "C
  Function" instead of "C Procedure".  Enclose multiple-word type names
  in braces.  Reported by Dale P. Smith.
2011-09-27 13:41:21 +02:00
Ludovic Courtès
d5f7691782 doc: Fix typo regarding vhashes.
* doc/ref/api-compound.texi (VHashes): s/vlist-/alist-/.
2011-09-11 00:43:23 +02:00
Ludovic Courtès
cf14f3011b doc: Use fashionable terminology for macros.
* doc/ref/api-macros.texi (Macros): Mention EDSLs.
2011-09-09 00:05:43 +02:00
Ludovic Courtès
c8286111e0 Clarify --debug' vs. --no-debug'.
* module/ice-9/command-line.scm (*usage*): Attempt to suggest that
  `--no-debug' doesn't inhibit debugging support.

* doc/ref/guile-invoke.texi (Command-line Options): Make it clear that
  `--no-debug' doesn't inhibit debugging support.  Reported by Manuel
  Serrano.
2011-09-09 00:05:42 +02:00
Ludovic Courtès
8568067836 doc: Augment "Pattern Matching" section.
* doc/ref/match.texi (Pattern Matching): Mention records.  Add an
  example showing record matching and the `=' pattern.  Point users to
  `match.upstream.scm'.
2011-09-03 22:18:02 +02:00
Ludovic Courtès
d9241a37e8 Remove Front-Cover and Back-Cover text from the manual.
* doc/ref/guile.texi: Remove Front-Cover and Back-Cover text.
2011-09-03 22:18:02 +02:00
Andy Wingo
cd4171d012 document define-syntax-rule
* doc/ref/api-macros.texi (Syntax Rules): Add define-syntax-rule.
2011-09-02 11:42:44 +02:00
Andy Wingo
5261e74281 reword open-file docs
* doc/ref/api-io.texi (File Ports): Refactor open-file docs.  Thanks to
  Bake Timmons for the report.
2011-08-18 11:13:34 +02:00
Ludovic Courtès
8698e81007 doc: Remove redundant footnote about the former name of `guild'.
* doc/ref/scheme-using.texi (Using Guile Tools): Remove redundant
  footnote introduced in e108c961fe.
  Mention the version where the new name was introduced.
2011-07-23 22:43:38 +02:00
Ludovic Courtès
21b6df302f doc: Fix `merge-generics' example.
* doc/ref/goops.texi (Merging Generics): Change (my-module) example to
  use (oop goops) and use the right syntax for #:duplicates.  Reported
  by David Pirotte <david@altosw.be>.
2011-07-06 18:21:07 +02:00
Ludovic Courtès
ea5c9ddceb Add `guile-invoke.texi' to the distribution.
* doc/ref/Makefile.am (guile_TEXINFOS): Add `guile-invoke.texi'.
2011-06-30 16:36:03 +02:00
Mark Harig
94906b7541 better invocation documentation
* doc/ref/guile.texi (Programming in Scheme):
* doc/ref/scheme-scripts.texi (Guile Scripting): Moved "Invoking Guile"
  to its own file.

* doc/ref/guile-invoke.texi (Invoking Guile): Initial revision. This
  file contains the former section "Invoking Guile" that was included in
  the chapter "Programming in Scheme" as a subsection named
  "Command-line Options." It also includes a new subsection "Environment
  Variables," which describes those variables that can be set in the
  operating system before Guile is started and which affect Guile's
  run-time behavior.
2011-06-30 13:19:04 +02:00
Andy Wingo
7b0a2576c1 add docs for shift and reset
* doc/ref/api-control.texi (Prompt Primitives): Break call-with-prompt
  and abort-to-prompt out into a subsubsection.
  (Shift and Reset): New subsubsection.
2011-06-16 13:01:43 +02:00
Ludovic Courtès
e108c961fe doc: Mention the former name of `guild'.
* doc/ref/scheme-using.texi (Using Guile Tools): Add a footnote
  mentioning that `guild' used to be `guile-tools'.

* doc/ref/tools.texi (Executable Modules): Nitpicks.
2011-06-08 23:19:37 +02:00
Andy Wingo
715146aa15 add guild docs
* doc/ref/scheme-using.texi (Using Guile Tools): Add some optimistic
  guild docs.
2011-05-31 22:36:52 +02:00
Andy Wingo
b8b0659879 rename guile-tools' to guild'
* configure.ac: Look for ln -s.  Write out `guild' instead of
  `guile-tools'.

* meta/Makefile.am (install-data-hook): Link the installed `guild' to
  the backward-compatible `guile-tools' name.
  (bin_SCRIPTS, EXTRA_DIST): Fix up for guild change.

* meta/guild.in: Moved here from `guile-tools.in'.

* doc/ref/Makefile.am (autoconf-macros.texi):
* doc/ref/api-evaluation.texi (Compilation):
* doc/ref/autoconf.texi (Autofrisk, Using Autofrisk):
* doc/ref/mod-getopt-long.texi (getopt-long Reference):
* doc/ref/tools.texi (Miscellaneous Tools, Executable Modules): Minimal
  doc update.

* .gitignore:
* am/guilec (.scm.go):
* libguile/Makefile.am (snarf2checkedtexi):
* module/Makefile.am (ice-9/psyntax-pp.go): Update makefiles, etc.

* module/scripts/README:
* module/scripts/lint.scm:
* module/scripts/list.scm: Update commentaries.
2011-05-31 22:01:47 +02:00
Neil Jerram
c382f58943 Doc for getopt-long's new stop-at-first-non-option option
* doc/ref/mod-getopt-long.texi (getopt-long): Mention optional keyword
  parameters.

  (getopt-long Reference): Document #:stop-at-first-non-option.
2011-05-26 22:02:16 +01:00
Neil Jerram
7a582ca155 Remove unused script-getopt.texi
* doc/ref/Makefile.am (guile_TEXINFOS): Remove script-getopt.texi.

* doc/ref/script-getopt.texi: Deleted.  This file wasn't included in
  the manual, and its content is now duplicated identically in
  scheme-scripts.texi.
2011-05-26 21:30:05 +01:00
Mark H Weaver
f567a43cf0 Clarify docs for SCM_UNSPECIFIED: used sometimes but not always
* doc/ref/data-rep.texi (Immediate objects): Clarify the description
  of SCM_UNSPECIFIED.  It is returned by some (but not all) expressions
  whose value is unspecified by the Scheme standard.
2011-05-25 12:40:55 -04:00
Andy Wingo
1233b38393 fix documentation for option-set! syntaxen
* doc/ref/api-evaluation.texi (Scheme Read): Note that read-set! is
  syntax.
  (Scheme Write): Likewise for print-set!.

* doc/ref/api-io.texi (Writing): Remove reference to
  print-options-interface.

* doc/ref/repl-modules.texi (Readline Options): Update, and add entries
  for readline-options, readline-set! et al.
2011-05-20 11:54:46 +02:00
Ludovic Courtès
19301dc56d Add `vhash-fold-right'.
* module/ice-9/vlist.scm (vhash-fold-right): New procedure.

* test-suite/tests/vlist.test ("vhash")["vhash-fold-right"]: New test.

* doc/ref/api-compound.texi (VHashes): Document `vhash-fold-right'.
2011-05-08 18:20:42 +02:00
Andreas Rottmann
2252321bb7 Make the R6RS simple I/O library use conditions
* module/rnrs/io/ports.scm (display): Implement as an
  exception-converting wrapper around Guile's core display.
* module/rnrs/io/simple.scm: Don't export Guile's corresponding core
  procedures, but use `(rnrs io ports)' instead.  This way, we get the
  conditions required by R6RS raised.

* doc/ref/r6rs.texi (rnrs io simple): Mention that these procedures are
  supposed to raise R6RS conditions.
2011-05-07 23:48:46 +02:00
Andreas Rottmann
040dfa6f37 More completely document the `(rnrs io ports)' library
* doc/ref/api-io.texi (R6RS I/O Ports): Transcribe missing parts from
  the R6RS document.
2011-05-07 22:30:40 +02:00
Andy Wingo
800690141f fix break example
* doc/ref/api-control.texi (while do): Fix a break example.
2011-04-28 21:33:12 +02:00
Andy Wingo
91956a94fe allow while as an expression
* module/ice-9/boot-9.scm (while): Specify the return value as #f under
  normal conditions, #t under (break), and arg... under (break arg...).
* test-suite/tests/syntax.test ("while"): Test.
* doc/ref/api-control.texi (while do): Document.
2011-04-28 15:48:35 +02:00
Ludovic Courtès
de424d9594 Document `(ice-9 binary-ports)'.
* doc/ref/api-io.texi (R6RS I/O Ports): Mention `(ice-9 binary-ports)'.

* NEWS: Update.
2011-04-27 22:14:31 +02:00
Ludovic Courtès
96128014bf Make sure binary ports pass `binary-port?' regardless of the locale.
* libguile/r6rs-ports.c (make_bip, make_cbip, make_bop, make_cbop):
  Set `c_port->encoding' to NULL.

* test-suite/tests/r6rs-ports.test ("7.2.7 Input
  Ports")["bytevector-input-port is binary"]: New test.
  ("7.2.7 Input Ports")["make-custom-binary-input-port"]: Make sure PORT
  passes `binary-port?' and `input-port?'.
  ("8.2.10 Output ports")["bytevector-output-port is binary"]: New test.
  ["make-custom-binary-output"]: Rename to...
  ["make-custom-binary-output-port"]: ... this.

* test-suite/tests/ports.test ("string ports")["read-char, wrong
  encoding, error", "read-char, wrong encoding, escape", "read-char,
  wrong encoding, substitute", "peek-char, wrong encoding, error"]: Use
  `set-port-encoding!' instead of `%default-port-encoding' to set the
  encoding of bytevector input ports.

* test-suite/tests/rdelim.test ("read-line")["decoding error", "decoding
  error, substitute"]: Likewise.

* doc/ref/api-io.texi (R6RS Port Manipulation): Document `binary-port?'
  and `textual-port?'.

* doc/ref/r6rs.texi (R6RS Incompatibilities): Mention the soft
  distinction between textual and binary ports.
2011-04-22 23:58:00 +02:00
Mark H Weaver
c3d8450c75 Clarify units of string length in decription of scm_from_stringn
* doc/ref/api-data.texi (Conversion to/from C): In description of
  scm_from_stringn, clarify that the length is specified in bytes.
2011-04-21 09:56:11 -04:00
Mark H Weaver
68a78738a4 Clarify the units of returned lengths in string conversion functions
* doc/ref/api-data.texi (Conversion to/from C): In descriptions of
  scm_to_stringn and scm_to_{latin1,utf8,utf32}, clarify that the
  returned length is in units of bytes or code points, not characters.
  Also change NULL to @code{NULL} in a few places.
2011-04-19 23:59:17 -04:00
Andy Wingo
1e56cff233 add --fresh-auto-compile
* doc/ref/api-evaluation.texi (Compilation): Add discussion of
  --fresh-auto-compile.
* doc/ref/scheme-scripts.texi (Invoking Guile): Add --fresh-auto-compile
  option.

* NEWS: Add entry.

* libguile/load.c: Define %fresh-auto-compile.
  (scm_primitive_load_path): Use it here.
  (scm_init_load_should_auto_compile): Init from GUILE_AUTO_COMPILE env
  var, with a value of "fresh".

* module/ice-9/boot-9.scm (load-in-vicinity): Auto-compilation cache is
  stale if %fresh-auto-compile is true.

* module/ice-9/command-line.scm (compile-shell-switches): Parse out
  --fresh-auto-compile.
2011-04-15 11:27:27 +02:00
Mark H Weaver
882c89636a Fix the R6RS exact-integer-sqrt and import into core guile
* libguile/numbers.c (scm_exact_integer_sqrt): New C procedure to
  compute exact integer square root and remainder.
  (scm_i_exact_integer_sqrt): New Scheme procedure `exact-integer-sqrt'
  from the R6RS, imported into core guile.

* libguile/numbers.h: Add prototypes.

* module/rnrs/base.scm: Remove broken stub implementation, which would
  fail badly when applied to large integers.

* doc/ref/api-data.texi: Add documentation.

* doc/ref/r6rs.texi: Change documentation for `exact-integer-sqrt' to a
  stub that xrefs the core docs, as is done for other operations
  available in core.

* test-suite/tests/numbers.test: Add tests.

* NEWS: Add news entries.
2011-04-09 16:11:49 -04:00
Andreas Rottmann
165b10ddfa Move `define-inlinable' into the default namespace
* module/ice-9/boot-9.scm (define-inlineable): Moved here from SRFI-9.
* module/srfi/srfi-9 (define-inlinable): Removed here.

* doc/ref/api-procedures.texi (Inlinable Procedures): Add subsection
  about `define-inlinable'.
2011-04-07 01:12:26 +02:00
Mark H Weaver
ce6066065d Doc fix: quotient/remainder/modulo do not require exact arguments
* doc/ref/api-data.texi (Arithmetic): `floor-remainder' is equivalent to
  the R5RS `modulo' when the arguments are integers.  Previously,
  equivalence was claimed only for exact integers.  Similarly for
  `truncate-quotient' and `truncate-remainder' compared with the R5RS
  `quotient' and `remainder'.
2011-04-06 13:00:34 -04:00
Andy Wingo
c6b08d2194 string->pointer and pointer->string have optional encoding arg
* test-suite/tests/foreign.test ("pointer<->string"): Add test cases.

* libguile/foreign.c (scm_string_to_pointer, scm_pointer_to_string): Add
  optional encoding, and in the pointer->string case, length arguments.

* libguile/foreign.h: Update prototypes of internal functions.
  Shouldn't affect ABI as they are internal.

* doc/ref/api-foreign.texi (Void Pointers and Byte Access): Update
  docs.
2011-04-01 13:31:26 +02:00
Andy Wingo
09b7459b49 web.texi: handler return types documentation
* doc/ref/web.texi (Web Server): More docs on handler return types.
2011-03-31 16:36:01 +02:00
Andy Wingo
2ebdf6b555 web.texi: fix uri->string invocation
* doc/ref/web.texi (Web Examples): Fix uri->string invocation.  Thanks
  to Romel Sandoval for the report.
2011-03-31 16:17:35 +02:00
Andy Wingo
2460274d36 document -q, repl options
* doc/ref/scheme-scripts.texi (Invoking Guile): Document -q.
* doc/ref/scheme-using.texi (Init File): New section, on .guile.
  (Readline): Link to Init File.
  (System Commands): Document the various REPL options, and
  repl-default-option-set!.
2011-03-29 12:18:20 +02:00
Noah Lavine
8e9af85412 Document SRFI-23
* doc/ref/srfi-modules.texi: mention that we support SRFI 23
 * module/ice-9/boot-9.scm (%cond-expand-features): add srfi-23
2011-03-27 13:02:15 +02:00
Neil Jerram
c6e05396dc Remove statements about scripts/* that are no longer true
* doc/ref/tools.texi (Executable Modules): Say "guile-tools modules"
  instead of "executable modules".  Remove obsolete statements about
  not ending in .scm, being executable, and beginning with shell
  script invocation sequence.

* module/scripts/README: Ditto.
2011-03-25 19:45:14 +00:00
Neil Jerram
6b8bc6f8b5 Inline the effect of am/pre-inst-guile
It's just one variable definition, and in my opinion it confuses,
rather than helps, the overall build picture to have two names
(preinstguile and meta/guile) for the same thing.

* am/Makefile.am (am_frags): Remove pre-inst-guile.

* am/pre-inst-guile: Deleted.

* doc/ref/Makefile.am: Don't include am/pre-inst-guile.
  ($(snarf_doc).am, $(snarf_doc).texi): Expand $(preinstguile).

* module/Makefile.am (ice-9/psyntax-pp.scm.gen): Don't include
  am/pre-inst-guile.
  (ice-9/psyntax-pp.scm.gen): Expand $(preinstguile).
2011-03-25 19:45:14 +00:00
Andy Wingo
95f5e303bc scm_{to,from}_locale_string use current locale, not current ports
* libguile/strings.c (scm_to_locale_stringn, scm_from_locale_stringn):
  Use the encoding of the current locale, not of the current i/o ports.
  Also use the current conversion strategy.

* doc/ref/api-data.texi (Conversion to/from C): Update docs.
2011-03-17 18:29:08 +01:00
Andy Wingo
148c331769 add pointer->scm, scm->pointer
* libguile/foreign.c (scm_pointer_to_scm, scm_scm_to_pointer): New
  functions, useful to pass and receive SCM values to and from foreign
  functions.

* module/system/foreign.scm: Export the new functions.

* doc/ref/api-foreign.texi (Foreign Variables): Add docs.

* test-suite/tests/foreign.test ("pointer<->scm"): Tests.
2011-03-17 10:39:02 +01:00
Ludovic Courtès
958173e489 doc: Remove "lack of support for Unicode I/O and strings".
* doc/ref/api-io.texi (R6RS I/O Ports): Remove 1.8ish comment.
2011-03-13 23:21:07 +01:00