1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-04-30 11:50:28 +02:00
Commit graph

40 commits

Author SHA1 Message Date
Mark H Weaver
e7cf0457d7 Support => within case, and improve error messages for cond and case
* module/ice-9/boot-9.scm (cond, case): Reimplement using syntax-case,
  with improved error messages and support for '=>' within 'case' as
  mandated by the R7RS.  Add warnings for duplicate case datums and
  case datums that cannot be meaningfully compared using 'eqv?'.

* module/system/base/message.scm (%warning-types): Add 'bad-case-datum'
  and 'duplicate-case-datum' warning types.

* test-suite/tests/syntax.test (cond, case): Update tests to reflect
  improved error reporting.  Add tests for '=>' within 'case'.

* test-suite/tests/tree-il.test (partial evaluation): Update tests to
  reflect changes in how 'case' is expanded.

* doc/ref/api-control.texi (Conditionals): Document '=>' within 'case'.
2012-02-08 16:27:48 -05:00
Bake Timmons
df0a100250 Make notation for Scheme repeated arguments more consistent in manual.
* doc/ref/api-compound.texi
* doc/ref/api-control.texi
* doc/ref/api-data.texi
* doc/ref/api-debug.texi
* doc/ref/api-evaluation.texi
* doc/ref/api-macros.texi
* doc/ref/api-memory.texi
* doc/ref/api-modules.texi
* doc/ref/api-procedures.texi
* doc/ref/api-regex.texi
* doc/ref/api-scheduling.texi
* doc/ref/api-utility.texi
* doc/ref/goops.texi
* doc/ref/match.texi
* doc/ref/misc-modules.texi
* doc/ref/posix.texi
* doc/ref/r6rs.texi
* doc/ref/scheme-using.texi
* doc/ref/srfi-modules.texi
* doc/ref/sxml-match.texi: Make notation for Scheme repeated arguments more
  consistent in manual.
2012-02-04 00:10:13 +01:00
Andy Wingo
9accf3d98f add when, unless
* module/ice-9/boot-9.scm (when, unless): New forms.

* doc/ref/api-control.texi (Conditionals): Add docs.  Rename this
  node from "if cond case".

* doc/ref/r6rs.texi:
* doc/ref/scheme-ideas.texi:
* doc/ref/srfi-modules.texi: Update referrers.
2012-01-20 19:51:45 +01:00
Mark H Weaver
1ceeca0a76 Add `scm_c_value_ref' to allow access to multiple returned values from C
Based on a patch by Julian Graham <julian@member.fsf.org>

* libguile/values.c, libguile/values.h (scm_c_value_ref): New function.
* doc/ref/api-control.texi (Multiple Values): Add documentation.
* test-suite/standalone/test-scm-values.c: New test program.
* test-suite/standalone/Makefile.am: Add test-scm-values test.
2012-01-18 18:01:48 -05:00
Andy Wingo
4f5fb35194 deprecate SCM_ASRTGO
* libguile/deprecated.h: Mark scm_immutable_cell and
  scm_immutable_double_cell as being SCM_DEPRECATED, not SCM_API.
  Deprecate SCM_ASRTGO.

* libguile/deprecated.c (scm_i_deprecated_asrtgo): New support
  procedure.

* doc/ref/api-control.texi (Handling Errors): Remove ASRTGO docs.
2012-01-08 14:27:03 +01:00
Andy Wingo
dc65d1cf5b document invalidity of (begin) as expression; add back-compat shim
* doc/ref/api-control.texi (begin): Update to distinguish between
  splicing begin and sequencing begin.

* module/ice-9/psyntax.scm (expand-expr): Add a back-compatibility shim
  for `(begin)'.
* module/ice-9/psyntax-pp.scm: Regenerate.

* test-suite/tests/syntax.test: Update to run illegal (begin) test only
  if we are not including deprecated features.
2011-12-21 20:14:59 -05: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
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
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
Neil Jerram
679cceeda4 Misc textual editing
* doc/ref/api-scheduling.texi (Asyncs): "queueing" -> "queuing".

* benchmark-suite/lib.scm, doc/sources/unix.texi (Unix conventions),
  test-suite/lib.scm: "postpend" -> "append".

* doc/ref/api-compound.texi (Array Syntax, Dictionary Types),
  doc/ref/api-control.texi (Catch), doc/ref/api-data.texi (Complex
  Numbers, Conversion, Random, Symbol Props, Symbol Uninterned),
  doc/ref/api-options.texi (Build Config, Common Feature Symbols),
  doc/ref/api-regex.texi (Match Structures),
  doc/ref/api-undocumented.texi, doc/ref/compiler.texi (Tree-IL,
  GLIL), doc/ref/data-rep.texi (Immediate objects), doc/ref/goops.texi
  (Slot Description Example), doc/ref/history.texi (A Scheme of Many
  Maintainers, Status), doc/ref/libguile-program.texi (Available
  Functionality), doc/ref/misc-modules.texi (Formatted Output),
  doc/ref/mod-getopt-long.texi (getopt-long Reference),
  doc/ref/posix.texi (Network Socket Address, Network Sockets and
  Communication), doc/ref/srfi-modules.texi (SRFI-1 Association Lists,
  SRFI-10, SRFI-19 String to date, SRFI-27 Random Sources),
  doc/ref/vm.texi (Instruction Set, Top-Level Environment
  Instructions, Procedure Call and Return Instructions),
  doc/sources/unix.texi (Unix conventions): Correct spacing after
  "i.e." and "e.g.".
2011-02-13 22:13:33 +00:00
Ralf Wildenhues
ecb8733562 docs: fix typos in manual, and a couple in code comments.
* doc/ref/api-binding.texi, doc/ref/api-compound.texi,
doc/ref/api-control.texi, doc/ref/api-debug.texi,
doc/ref/api-io.texi, doc/ref/api-macros.texi,
doc/ref/api-procedures.texi, doc/ref/api-scheduling.texi,
doc/ref/api-undocumented.texi, doc/ref/api-utility.texi,
doc/ref/compiler.texi, doc/ref/goops.texi,
doc/ref/libguile-concepts.texi, doc/ref/misc-modules.texi,
doc/ref/posix.texi, doc/ref/r6rs.texi, doc/ref/slib.texi,
doc/ref/srfi-modules.texi, doc/ref/sxml-match.texi,
doc/ref/tools.texi, doc/ref/vm.texi, doc/ref/web.texi,
doc/sources/env.texi, doc/sources/jimb-org.texi,
doc/sources/scheme-concepts.texi, doc/sources/unix.texi,
module/ice-9/optargs.scm: Fix typos.
* doc/r4rs/r5rs.texi: Likewise.  Do not capitalize code symbols
even at the start of a sentence.
* doc/ref/api-data.texi: Likewise.  Also, remove executable bit.
2011-02-09 22:28:49 +00: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
Neil Jerram
58228cc689 Document scm_wrong_type_arg_msg
* doc/ref/api-control.texi: New def for scm_wrong_type_arg_msg.
2010-09-11 18:37:02 +01:00
Andy Wingo
7545ddd42a a number of doc fixes
* doc/ref/api-control.texi (Handling Errors): Update docs for
  display-error.

* libguile/backtrace.h (scm_i_display_error): Change prototype to
  s/stack/frame/.
* libguile/throw.c (handler_message): Change invocation of
  scm_i_display_error to pass a frame.

* doc/ref/api-deprecated.texi (Deprecation): Update wording.

* doc/ref/api-evaluation.texi (Local Evaluation): Remove section on
  local-eval.

* doc/ref/api-macros.texi: Fix a couple typos.

* doc/ref/api-memory.texi (Objects): Remove terrible section.
* doc/ref/api-procedures.texi (Procedure Properties): Remove docs for
  closure?.
  (Compiled Procedures): Update wording.

* doc/ref/guile.texi (API Reference): Remove reference to "Objects".
2010-08-16 21:36:14 -07:00
Neil Jerram
26b9f90900 Merge branch 'master' into wip-manual-2
Conflicts:

	doc/ref/api-procedures.texi
	doc/ref/misc-modules.texi

(Caused by me removing `@page' from a couple of sections that have been modified
by others.)
2010-04-10 13:32:42 +01:00
Andy Wingo
17ed90df48 add a section to the manual on prompts
* doc/ref/api-control.texi (Prompts): Add a section on prompts.
2010-03-16 22:47:35 +01:00
Andy Wingo
0f7e6c56cd update "data representation" part of guile internals doc
* doc/ref/api-control.texi (Handling Errors): Move the "Signalling Type
  Errors" section here.

* doc/ref/data-rep.texi (Data Representation): Refactor, lopping and
  cropping and stitching.

* doc/ref/libguile-concepts.texi (Dynamic Types):
* doc/ref/libguile-smobs.texi (Describing a New Type, Double Smobs):
* doc/ref/guile.texi (Guile Implementation, Programming in C): Adapt to
  refactorings.

* doc/ref/history.texi (A Scheme of Many Maintainers):
  (A Timeline of Selected Guile Releases, Status): Update.
2010-03-14 14:39:47 +01:00
Andy Wingo
e10cf6b9c7 deprecate lazy-catch
* libguile/deprecated.h:
* libguile/deprecated.c (scm_internal_lazy_catch, scm_lazy_catch):
  Deprecate, and print out a nasty warning that people should change to
  with-throw-handler.

* libguile/throw.h:
* libguile/throw.c (scm_c_with_throw_handler): Deprecate the use of the
  lazy_catch_p argument, printing out a nasty warning if someone
  actually passes 1 as that argument. The combination of the pre-unwind
  and post-unwind handlers should be sufficient.

* test-suite/tests/exceptions.test: Remove lazy-catch tests, as they are
  deprecated. Two of them fail:
  * throw/catch: effect of lazy-catch unwinding on throw to another key
  * throw/catch: repeat of previous test but with lazy-catch
  Hopefully people are not depending on this behavior, and the warning is
  sufficiently nasty for people to switch. We will see.

* test-suite/tests/eval.test ("promises"): Use with-throw-handler
  instead of lazy-catch.

* doc/ref/api-debug.texi:
* doc/ref/api-control.texi: Update to remove references to lazy-catch,
  folding in the useful bits to with-throw-handler.
2010-02-26 11:56:02 +01:00
Andy Wingo
997659f898 make scm_make_continuation internal
* libguile/continuations.h:
* libguile/continuations.c (scm_i_make_continuation): Change from
  scm_make_continuation, and make internal.

* libguile/vm-i-system.c (call/cc, tail-call/cc): Adapt callers.

* test-suite/standalone/test-unwind.c (check_cont_body): Adapt a test.

* doc/ref/api-control.texi (Continuations): Update docs.
2010-02-08 13:35:06 +01:00
Neil Jerram
2a7758fe23 Remove page breaks except before new chapters and indices
* doc/ref/api-binding.texi, doc/ref/api-compound.texi,
  doc/ref/api-control.texi, doc/ref/api-data.texi,
  doc/ref/api-debug.texi, doc/ref/api-evaluation.texi,
  doc/ref/api-i18n.texi, doc/ref/api-io.texi, doc/ref/api-memory.texi,
  doc/ref/api-modules.texi, doc/ref/api-options.texi,
  doc/ref/api-overview.texi, doc/ref/api-procedures.texi,
  doc/ref/api-scheduling.texi, doc/ref/api-smobs.texi,
  doc/ref/api-translation.texi, doc/ref/api-utility.texi,
  doc/ref/expect.texi, doc/ref/libguile-concepts.texi,
  doc/ref/libguile-program.texi, doc/ref/misc-modules.texi,
  doc/ref/repl-modules.texi, doc/ref/scheme-debugging.texi,
  doc/ref/scheme-reading.texi, doc/ref/scheme-scripts.texi,
  doc/ref/script-getopt.texi, doc/ref/scsh.texi,
  doc/ref/srfi-modules.texi: Remove @page before @section.
2009-12-19 00:58:54 +00:00
Brian Gough
72b3aa56af more typo fixes
More spelling corrections and fixes for doubled words (e.g. "the the")

--
Brian Gough

Network Theory Ltd,
Publishing Free Software Manuals --- http://www.network-theory.co.uk/

>From 7be02beedc739c32cce2c8ec8f4ac814c994a13f Mon Sep 17 00:00:00 2001
From: Brian Gough <bjg@gnu.org>
Date: Mon, 14 Dec 2009 22:06:22 +0000
Subject: [PATCH] fix various documentation typos (spelling & doubled words)
2009-12-18 00:53:34 +00:00
Neil Jerram
98241dc53f Revert "Change dynwind flag enums to #defines, for greater portability"
This reverts commit b25aa0b937.
2009-10-07 22:14:38 +01:00
Neil Jerram
b25aa0b937 Change dynwind flag enums to #defines, for greater portability
Thanks to Inge Gutheil for raising this problem.

* doc/ref/api-control.texi (Dynamic Wind): Remove doc for
  scm_t_dynwind_flags, and change uses of scm_t_dynwind_flags to int.
  Mention possible flags inside doc for scm_dynwind_begin instead.
  Similarly for scm_t_wind_flags.  In this case the doc on possible
  flags is moved to after the four functions that can use them.

* libguile/dynwind.c (scm_dynwind_begin): Change scm_t_dynwind_flags
  to int.
  (scm_dynwind_unwind_handler): Change scm_t_wind_flags to int.
  (scm_dynwind_rewind_handler): Ditto.
  (scm_dynwind_unwind_handler_with_scm): Ditto.
  (scm_dynwind_rewind_handler_with_scm): Ditto.

* libguile/dynwind.h (SCM_F_DYNWIND_REWINDABLE): Use #define instead
  of typedef enum.
  (SCM_F_WIND_EXPLICITLY): Ditto.
  (function declarations): Change scm_t_dynwind_flags and
  scm_t_wind_flags to int.

* test-suite/standalone/test-unwind.c (check_cont_body): Change
  scm_t_dynwind_flags to int.
2009-10-02 22:20:47 +01:00
Andy Wingo
56664c089c update news; ready for 1.9.3
* doc/ref/api-control.texi:
* doc/ref/goops.texi: Fix some typos.

* NEWS: Update.
2009-09-06 13:36:32 +02:00
Neil Jerram
ce2612cd88 Move `Continuation Barriers' to the section that covers continuations
Since continuation barriers protect against non-local exits, it makes
better sense to document them in the same section as continuations and
exceptions.
2009-08-03 13:21:33 +01:00
Ludovic Courtès
a1ef740636 Changes from arch/CVS synchronization 2007-06-07 08:36:13 +00:00
Kevin Ryde
9a18d8d431 merge from 1.8 2007-01-15 23:22:36 +00:00
Kevin Ryde
40296bab81 merge from 1.8 branch 2006-10-09 22:47:06 +00:00
Neil Jerram
9f1ba6a9a4 Doc typo fixes 2006-09-15 09:23:18 +00:00
Kevin Ryde
23f2b9a3de merge from 1.8 branch 2006-06-17 23:15:59 +00:00
Neil Jerram
7b4c914e49 (Throw Handlers): New node.
(Throw): Moved to after the Lazy Catch node.
(Catch): Enhance to cover the optional pre-unwind handler, and new
APIs scm_c_catch, scm_catch_with_pre_unwind_handler.
(Lazy Catch): Describe relationship to with-throw-handler.
Document that the handler may return, and what happens if it does.
(Throw): Mention that a throw can be handled by a throw handler as
well as by a catch.
2006-02-04 14:35:53 +00:00
Marius Vollmer
661ae7ab6b Renamed the "frames" that are related to dynamic-wind to "dynamic
contexts.  Renamed all functions from scm_frame_ to scm_dynwind_.
Updated documentation.
2006-01-29 00:23:28 +00:00
Marius Vollmer
43ed3b697e * api-control.texi (if cond case): Describe SRFI 61 cond.
* srfi-modules.texi (SRFI-61): New section.
(SRFI Support): Add SRFI-61 to menu.
2005-12-06 21:32:55 +00:00
Kevin Ryde
44ba562e29 (Error Reporting): In strerror, note message is in
locale language and charset.
2005-08-06 00:40:16 +00:00
Kevin Ryde
9ef07f6f6c (Lazy Catch): Cross ref for with-fluids. 2005-06-23 00:10:53 +00:00
Marius Vollmer
b4fddbbeda Updates for the new thread stuff. 2005-03-02 20:46:41 +00:00
Marius Vollmer
7cd44c6dce Updated docstrings from libguile/ 2004-09-23 18:46:49 +00:00
Marius Vollmer
273167608a Updated example to use scm_to_locale_string
instead of roll-your-own scm_to_string.  Also showcase
scm_frame_free.
2004-08-10 14:16:34 +00:00
Marius Vollmer
07d83abe7b * scheme-binding.texi: Renamed to api-binding.texi.
* scheme-compound.texi: Renamed to api-compound.texi.
* scheme-control.texi: Renamed to api-control.texi.
* scheme-data.texi: Renamed to api-data.texi.
* scheme-debug.texi: Renamed to api-debug.texi.
* deprecated.texi: Renamed to api-deprecated.texi.
* scheme-evaluation.texi: Renamed to api-evaluation.texi.
* ref-init.texi: Renamed to api-init.texi.
* scheme-io.texi: Renamed to api-io.texi.
* scheme-memory.texi: Renamed to api-memory.texi.
* scheme-modules.texi: Renamed to api-modules.texi.
* scheme-options.texi: Renamed to api-options.texi.
* scm.texi: Renamed to api-overview.texi.
* scheme-procedures.texi: Renamed to api-procedures.texi.
* scheme-scheduling.texi: Renamed to api-scheduling.texi.
* scheme-scm.texi: Renamed to api-scm.texi.
* scheme-smobs.texi: Renamed to api-smobs.texi.
* scheme-snarf.texi: Renamed to api-snarf.texi.
* scheme-translation.texi: Renamed to api-translation.texi.
* scheme-utility.texi: Renamed to api-utility.texi.
* debugging.texi: Renamed to scheme-debugging.texi.
* scripts.texi: Renamed to scheme-scripts.texi.
* program.texi: Renamed to libguile-program.texi.
2004-08-02 12:29:00 +00:00