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

1818 commits

Author SHA1 Message Date
Andy Wingo
c55cb58ac1 integrate guile-lib docs 2009-12-21 00:01:49 +01:00
Neil Jerram
84d86e7453 Typo and formatting
* doc/ref/intro.texi (Introduction): "onScheme" -> "on Scheme".  Add
  blank lines around @itemize block - looks better in Info.
2009-12-19 23:49:23 +00:00
Neil Jerram
cdda4e0a3d Remove obsolete and empty Tcl/Tk file
* doc/ref/Makefile.am (guile_TEXINFOS): Remove tcltk.texi.

* doc/ref/tcltk.texi: Deleted.
2009-12-19 23:37:28 +00:00
Neil Jerram
ebb6158f23 More about Guile's relationship to Scheme standards
Also continue adding a bit more structure to the introductory "what is
Guile" material.

* doc/ref/intro.texi (Introduction): Split `What is Guile?' (which is
  a bad heading, since we've already answered that...) into `Guile and
  Scheme' and `Combining with C'.  Further splits will follow, to
  cover the other toplevel bullet points.

  (Guile and Scheme): Remove `packaged for use in a wide variety of
  environments', as I don't see what this can mean to the reader at
  this point.  Add text about R6RS and SRFIs.
2009-12-19 23:32:22 +00:00
Neil Jerram
95c2df5c60 Format `Revised^n' more nicely in TeX
* doc/ref/intro.texi (Introduction): Format Revised^n differently for
  TeX.
2009-12-19 23:26:29 +00:00
Neil Jerram
3d9af0c966 New introductory text about Guile
* doc/ref/guile.texi (Top): Rename `Introduction to Guile' as just
  `Introduction'.

* doc/ref/intro.texi: Add new introductory text.  [Not yet complete]

* doc/ref/preface.texi (Preface): Update for chapter renaming.
2009-12-19 01:31:03 +00:00
Neil Jerram
65de749477 Move Conventions section to after `Reporting Bugs'
(Reporting Bugs fits better immediately after the tour of how to use
Guile)

* doc/ref/intro.texi: Move `Manual Conventions' to after `Reporting
  Bugs', and rename to `Typographical Conventions'.
2009-12-19 01:28:27 +00:00
Neil Jerram
029fa8965d Move "Discouraged and Deprecated" from Introduction to API chapter
* doc/ref/intro.texi (Discouraged and Deprecated): Move from here...

* doc/ref/api-discdepr.texi: ...to new file here.

* doc/ref/guile.texi: Include api-discdepr.texi, and include
 `Discouraged and Deprecated' in API chapter menu.

* doc/ref/Makefile.am (guile_TEXINFOS): Add api-discdepr.texi.
2009-12-19 01:20:33 +00: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
Neil Jerram
0fc7099144 Remove obsolete material about GH
* doc/ref/extend.texi: Delete.
2009-12-19 00:35:35 +00:00
Neil Jerram
064f84ae56 Streamline the manual's Preface material
(The principle here is that Preface should only contain
meta-information about the manual, such as how to use it and who wrote
it; plus any political points that we want to draw attention to.)

* doc/ref/preface.texi (Preface): Make unnumbered, for consistency
  with other GNU manuals (e.g. Emacs, GSL).  Merge layout text into
  top level.  Simplify first sentence.  Move section on conventions
  away...

* doc/ref/intro.texi (Introduction to Guile): ...to here.
2009-12-19 00:06:42 +00:00
Neil Jerram
3733df073f Update and simplify statement about RnRS support
* doc/ref/scheme-intro.texi (Guile Scheme): Mention R6RS as well as
  R5RS.  Simplify text.
2009-12-18 01:21:55 +00:00
Brian Gough
2c18ac5f8e make the use of the 5-argument @xref command consistent
A few of the @xref references to external manuals in the documentation
are using an old 4-argument form that produces an undefined reference
in the printed manual.  The following patch makes them consistent with
the 5-argument @xrefs used elsewhere in the manual.

--
Brian Gough

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

>From 6ca0417830dc5a98699a15808591dc1f2a90dfac Mon Sep 17 00:00:00 2001
From: Brian Gough <bjg@gnu.org>
Date: Mon, 14 Dec 2009 21:34:59 +0000
Subject: [PATCH] make the use of the 5-argument @xref command consistent
 when referring to other manuals.
2009-12-18 01:21:55 +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
Brian Gough
2e4ef7eda1 typo fix
Correction for garbled sentence.

--
Brian Gough

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

>From f819b597a46ad4ed23597e5a81d1acab46f15147 Mon Sep 17 00:00:00 2001
From: Brian Gough <bjg@gnu.org>
Date: Mon, 14 Dec 2009 20:04:34 +0000
Subject: [PATCH] typo fix
2009-12-18 00:53:07 +00:00
Brian Gough
93b645239b added brief introduction about SLIB
This patch adds a short introduction to the SLIB section of the manual
with a link to the SLIB homepage.

--
Brian Gough

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

>From 60548b6e039bf57694b7841996cfda011cb8a4bf Mon Sep 17 00:00:00 2001
From: Brian Gough <bjg@gnu.org>
Date: Mon, 14 Dec 2009 20:49:27 +0000
Subject: [PATCH] added brief introduction about SLIB
2009-12-18 00:51:20 +00:00
Brian Gough
8d7ee181be Hash Table examples - hashq takes different number of arguments
In the "Hash Tables Example" in the manual, hashq needs 2 arguments
instead of 1 (patch below).  I've updated the hash table output as
well to match the current version.

--
Brian Gough

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

>From fdb6101d2e064620746ebfc9f9cd28bbdd2470e8 Mon Sep 17 00:00:00 2001
From: Brian Gough <bjg@gnu.org>
Date: Mon, 14 Dec 2009 19:59:32 +0000
Subject: [PATCH] update docs for Hash Table Examples
 hashq now takes two arguments
 order of elements in hash table is different now
2009-12-18 00:49:20 +00:00
Brian Gough
e163dd343b replace ascii figures with scalable ps/pdf versions.
use ascii figures in HTML output, to work around deficiency in makeinfo
where images are not copied to target directory.
2009-12-17 23:17:59 +00:00
Brian Gough
e03d96363f use explicit ./scriptname to help novice users 2009-12-17 23:17:50 +00:00
Brian Gough
d746e18ef5 use correct url to ftp.gnu.org 2009-12-17 23:17:41 +00:00
Andy Wingo
e42573315b merge from master to elisp
* module/language/elisp/compile-tree-il.scm: Update for changes to
  tree-il (lambda-case, mainly).

* module/language/elisp/spec.scm: Update GPL version to 3. Update reader
  for new taking a port and environment argument.

* libguile/_scm.h: Bump objcode version.

* libguile/vm-i-system.c: Fix conflicts.

* module/Makefile.am: Fix conflicts, and add elisp modules to the build.
2009-12-11 10:45:18 +01:00
Andy Wingo
d84765da44 remove "primitive numerics" from the docs
* doc/ref/api-data.texi: Update for $sin deprecation.
2009-12-03 15:27:35 +01:00
Ludovic Courtès
c4e843571f "filesystem" -> "file system"
* doc/ref/misc-modules.texi, doc/sources/unix.texi,
  module/ice-9/ftw.scm: Replace "filesystem" by "file system".
2009-11-24 23:16:08 +01:00
Ludovic Courtès
a270e133f3 Correct manual wrt. encoding names.
* doc/ref/api-evaluation.texi (Character Encoding of Source Files):
  Don't suggest `latin1' as a good encoding name since Emacs cannot deal
  with it.

* libguile/read.c (scm_file_encoding): Fix "Emacs" spelling.
2009-11-23 23:51:02 +01:00
Ludovic Courtès
c84bdaf6b4 Add Gnulib maintainer modules.
* m4/gnulib-cache.m4: Add `announce-gen', `gendocs', `gitlog-to-changelog',
  `gnupload', `gnu-web-doc-update', and `maintainer-makefile'.

* .gnuploadrc, .x-sc_GPL_version, .x-sc_avoid_if_before_free,
  .x-sc_error_message_period, .x-sc_cast_of_alloca_return_value,
  .x-sc_cast_of_argument_to_free, .x-sc_error_message_uppercase,
  .x-sc_error_message_warn_fatal: New files.
2009-11-17 23:42:32 +01:00
Ludovic Courtès
3452e6667f Deprecate inet-ntoa' and inet-aton'.
Suggested by Bruno Haible.

* libguile/inet_aton.c: Remove.

* libguile/Makefile.am (EXTRA_libguile_la_SOURCES): Remove
  `inet_aton.c'.

* libguile/deprecated.c (scm_inet_aton, scm_inet_ntoa): New functions.

* libguile/deprecated.h: Update accordingly.

* libguile/socket.c (scm_inet_aton, scm_inet_ntoa): Remove.

* doc/ref/posix.texi (Network Address Conversion): Mark `inet-ntoa' and
  `inet-aton' as deprecated.
2009-11-16 09:23:47 +01:00
Ludovic Courtès
4c7b997519 Improve documentation of supported encoding names.
* doc/ref/api-evaluation.texi (Character Encoding of Source Files):
  Mention IANA as the list of supported character encodings.  Thanks to
  Bruno Haible for pointing this out.

* doc/ref/api-io.texi (Ports): Likewise.  Improve documentation of
  `%default-port-encoding'.
2009-11-16 09:23:45 +01:00
Andy Wingo
1e2a8edb8b Revert "implement #:predicate" and remove predicate from <lambda-case>
Turns out this was not a very useful idea, and semantically tricky to
boot.

This reverts commit 24bf130fd1, and makes
the following additional changes:

* module/ice-9/optargs.scm (parse-lambda-case, let-optional)
  (let-optional*, let-keywords, let-keywords*):
* module/language/tree-il.scm: (<lambda-case>, parse-tree-il)
  (unparse-tree-il, tree-il->scheme, tree-il-fold,
  make-tree-il-folder)
  (post-order!, pre-order!):
* module/language/tree-il/analyze.scm (analyze-lexicals):
* module/language/tree-il/compile-glil.scm (compile-glil):
* module/language/tree-il/inline.scm (inline!): Remove all traces of
  #:predicate from tree-il.

* module/ice-9/psyntax.scm (build-simple-lambda, build-lambda-case)
  (chi-lambda-case): Adapt to tree-il change.
* module/ice-9/psyntax-pp.scm: Regenerated.

* module/language/brainfuck/compile-tree-il.scm (compile-body):
* module/language/ecmascript/compile-tree-il.scm (comp, comp-body):
* test-suite/tests/tree-il.test: Adapt to tree-il change.

* doc/ref/api-procedures.texi (Case-lambda): Remove mention of
  #:predicate.
2009-11-15 21:02:26 +01:00
Ludovic Courtès
d6a6989e08 Replace setbinary' by a public %default-port-encoding' fluid.
* doc/ref/api-evaluation.texi (Character Encoding of Source Files): Add
  reference to the "Ports" node.

* doc/ref/api-io.texi (Ports): Document `%default-port-encoding'.

* libguile/ports.c (scm_port_encoding_var): Rename to...
  (default_port_encoding_var): ... this; update callers.  Make `static'.

* libguile/posix.c (scm_setbinary): Remove.

* libguile/posix.h: Adjust accordingly.

* test-suite/tests/numbers.test: Remove unneeded `setbinary' call.

* test-suite/tests/ports.test: Replace `setbinary' call by equivalent
  `%default-port-encoding' mutation and `set-port-encoding!' calls.

* test-suite/tests/r6rs-ports.test: Replace `setbinary' call by
  equivalent `%default-port-encoding' mutation.
2009-11-14 16:59:25 +01:00
Ludovic Courtès
88cbb42189 Restore signature of `scm_search_path ()' as found in 1.8.
The incompatibly was introduced by
22f4ee4882 ("make primitive-load-path load
compiled files if available").

* doc/ref/api-options.texi (Build Config): Update `search-path'
  documentation.

* libguile/load.c (scm_search_path): Change C prototype to expect only 3
  arguments.  Parse the rest argument accordingly.  Update callers.

* libguile/load.h (scm_search_path): Update accordingly.
2009-11-01 23:29:36 +01:00
Ken Raeburn
9515ef7237 Since support for "futures" in C has been completely disabled for some
time, and should be easily implementable in Scheme with the current
thread support, delete the C code.

* libguile/futures.c, libguile/futures.h: Delete.
* libguile/Makefile.am (libguile_la_SOURCES, DOT_X_FILES,
  DOT_DOC_FILES, modinclude_HEADERS): Delete references to futures.*
  files.

* libguile.h: Don't include futures.h.
* libguile/eval.c: Don't include futures.h.
  (isymnames): Delete "#@future" entry.
  (scm_m_future, s_future, scm_sym_future, unmemoize_future,
  unmemoize_builtin_macro): Delete disabled futures code.
* libguile/eval.i.c (CEVAL): Delete disabled futures code.
* libguile/init.c: Don't include futures.h.
  (scm_i_init_guile): Delete disabled futures initialization call.
* libguile/tags.h (SCM_IM_FUTURE): Delete.
  (SCM_IM_CALL_WITH_VALUES, SCM_IM_ELSE, SCM_IM_ARROW,
  SCM_IM_NIL_COND, SCM_IM_BIND): Renumber.

* doc/ref/api-scheduling.texi: Delete commented-out node on Futures.
* doc/maint/guile.texi: Delete make-future and future-ref mentions.
2009-10-30 18:40:41 -04:00
Andy Wingo
f916cbc4b1 update procedure docs for programs, lambda*, case-lambda
* module/system/vm/program.scm: Export the arity things again, and
  program-arity. Why not.

* doc/ref/api-procedures.texi (Compiled Procedures): Update for current
  API.
  (Optional Arguments): Update to assume lambda* and define* are always
  available, and (ice-9 optargs) is now the ghetto.
  (Case-lambda): Now here, moved from SRFI-16 docs. Also docs
  case-lambda*.

* doc/ref/srfi-modules.texi: Point to core case-lambda docs.
2009-10-27 00:08:20 +01:00
Ludovic Courtès
60c8ad9ea3 Add a `guile-2' SRFI-0 feature.
* doc/ref/srfi-modules.texi (SRFI-0): Mention the `guile-2' feature.

* module/ice-9/boot-9.scm (%cond-expand-features): Add `guile-2'.
2009-10-21 23:41:56 +02:00
Ludovic Courtès
620c89651a Add support for R6RS/SRFI-30 nested block comments.
Suggested by Andreas Rottmann <a.rottmann@gmx.at>.

* libguile/read.c (flush_ws, scm_read_sharp): Add support for
  R6RS/SRFI-30 block comments.
  (scm_read_r6rs_block_comment): New function.

* test-suite/tests/reader.test (exception:unterminated-block-comment):
  Adjust to match both block comment styles.
  ("reading")["R6RS/SRFI-30 block comment", "R6RS/SRFI-30 nested block
  comment", "R6RS/SRFI-30 block comment syntax overridden"]: New tests.
  ("exceptions")["R6RS/SRFI-30 unterminated nested block comment"]: New
  test.

* doc/ref/api-evaluation.texi (Block Comments): Mention SRFI-30/R6RS
  block comments.

* doc/ref/srfi-modules.texi (SRFI-30): New node.
2009-10-19 22:40:01 +02:00
Ludovic Courtès
1ebe6a6368 Document the interaction of the "compilee" with the compiler's current module.
This is a followup to 87c595c757 ("Compile
in a fresh module by default.") and
f65e2b1ec5 ("Honor and confine
expansion-time side-effects to `current-reader'.").

* doc/ref/api-evaluation.texi (Loading): Explain how to change
  `current-reader' in a compiler-friendly way.

* doc/ref/compiler.texi (The Scheme Compiler): Explain use of a fresh
  compilation module and separate `current-reader' fluid.

* test-suite/tests/compiler.test ("current-reader")["with eval-when"]:
  New test.
2009-10-15 21:29:42 +02:00
Ludovic Courtès
31ab99de56 Restore signature of `scm_primitive_load_path ()' as found in 1.8.
The incompatibility was introduced by
0fb81f95b0 ("add exception_on_error
optional arg to primitive-load-path").

* libguile/load.c (scm_primitive_load_path): Change to take 1 rest
  argument.  Interpret the argument as either a file name (C-level
  backward compatibility with 1.8) or an actual argument list.
  (scm_c_primitive_load_path): Update caller.

* libguile/load.h (scm_primitive_load_path): Update accordingly.

* doc/ref/api-evaluation.texi (Loading): Update documentation of
  `primitive-load-path' and `scm_primitive_load_path ()'.
2009-10-15 01:05:32 +02: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
Neil Jerram
187a43907f Fix doc for inet-ntop: always produces a string
Thanks to Scott McPeak for reporting this.

* libguile/socket.c (scm_inet_ntop): In docstring, add quotes around
  IPv6 address (+ reflow a bit).

* doc/ref/posix.texi (Network Address Conversion): Corresponding
  change.

* doc/maint/guile.texi: Corresponding change.
2009-10-01 23:38:57 +01:00
Neil Jerram
32bc92570e Fix incorrect doc mentions of INADDR_LOCALHOST
Thanks to Scott McPeak for reporting this.

* doc/ref/posix.texi (Network Sockets and Communication): Change
  INADDR_LOCALHOST to INADDR_LOOPBACK.
2009-10-01 22:27:41 +01:00
Ludovic Courtès
e0f6513511 Improve description of `scm_set_smob_mark ()'.
* doc/ref/api-smobs.texi (Smobs): Improve description of
  `scm_set_smob_mark ()'.  Mention malloc(3) regions.
2009-09-28 23:32:34 +02:00
Neil Jerram
871d85438d Manual link from Guile Initialization' to Initialization'
Thanks to Dale Smith for suggesting this.

* doc/ref/libguile-linking.texi: Add ref to full doc of Guile
  initialisation functions.
2009-09-22 01:03:43 +01:00
Neil Jerram
b77afe82a4 Typo fixes 2009-09-21 23:22:32 +01:00
Andy Wingo
c5923112fe fix thinko in api-memory.texi 2009-09-18 16:27:32 +02:00
Ludovic Courtès
d7a2207326 Add the `%host-type' global variable.
* configure.ac: Define `HOST_TYPE'.

* libguile/load.c (sys_host_type): New variable.

* doc/ref/api-options.texi (Build Config): Document `%host-type'.
2009-09-18 11:40:03 +02:00
Ludovic Courtès
756e8a3acf Merge libguile-i18n' into libguile'.
* GUILE-VERSION (LIBGUILE_I18N_MAJOR, LIBGUILE_I18N_INTERFACE_CURRENT,
  LIBGUILE_I18N_INTERFACE_REVISION, LIBGUILE_I18N_INTERFACE_AGE,
  LIBGUILE_I18N_INTERFACE): Remove.

* doc/ref/api-i18n.texi (i18n Introduction): Don't mention
  `libguile-i18n'.

* libguile.h: Include "libguile/i18n.h".

* libguile/Makefile.am (lib_LTLIBRARIES): Remove `libguile-i18n-v*'.
  (libguile_la_SOURCES): Add `i18n.c'.
  (libguile_i18n_v_*_SOURCES, libguile_i18n_v_*_CFLAGS,
  libguile_i18n_v_*_LIBADD, libguile_i18n_v_*_LDFLAGS): Remove.

* libguile/i18n.c (scm_bootstrap_i18n): New function.

* libguile/i18n.h (scm_nl_langinfo, scm_init_i18n): Made internal.
  (scm_bootstrap_i18n): New declaration.

* libguile/init.c (scm_i_init_guile): Invoke `scm_bootstrap_i18n ()'.

* module/ice-9/i18n.scm: Load from `libguile' instead of
  `libguile-i18n-v-0'.
2009-09-14 00:42:25 +02:00
Ludovic Courtès
d3d6614791 Update `scm_without_guile ()' documentation.
* doc/ref/api-scheduling.texi (Blocking): Mention that
  `scm_without_guile ()' & co. aren't needed any longer.
2009-09-14 00:42:25 +02:00
Ludovic Courtès
6dc797eee9 Merge branch 'master' into boehm-demers-weiser-gc
Conflicts:
	libguile/gc_os_dep.c
2009-09-09 22:39:49 +02:00
Ludovic Courtès
f07c349eb3 Update doc of `scm_gc_protect_object ()' and SMOB mark/free.
* doc/ref/api-memory.texi (Garbage Collection
  Functions)[scm_gc_protect_object]: Explain that it's equivalent to
  storing in a global variable.

* doc/ref/api-smobs.texi (Smobs)[scm_set_smob_free]: Expand on the
  relationship with `scm_gc_malloc ()'.
  [scm_set_smob_mark]: Explain that it's usually not needed.
2009-09-09 19:14:04 +02:00
Ludovic Courtès
56273dea4b Update documentation of `scm_gc_malloc ()' & co.
* doc/ref/api-memory.texi (Memory Blocks): Update description of
  `scm_gc_malloc ()' & co.  Add `scm_gc_malloc_pointerless ()'.
2009-09-09 00:49:05 +02:00