wingo pushed a commit to branch main
in repository guile.

commit 8441d8ff5671db690eb239cfea4dcfdee6d6dcdb
Author: Andy Wingo <wi...@pobox.com>
AuthorDate: Mon Sep 18 16:03:41 2023 +0200

    Fix docstring for symbol->string, string->symbol
    
    * libguile/symbols.c (scm_symbol_to_string, scm_string_to_symbol):
    Remove some confusing documentation that assumes that Guile is
    case-insensitive, and which uses a word that may be perceived as a slur.
    * module/ice-9/test.scm:
    * test-suite/tests/r4rs.test: Rename a test to avoid using a slur.
---
 libguile/symbols.c         | 48 ++++------------------------------------------
 module/ice-9/test.scm      |  4 ++--
 test-suite/tests/r4rs.test |  4 ++--
 3 files changed, 8 insertions(+), 48 deletions(-)

diff --git a/libguile/symbols.c b/libguile/symbols.c
index 086abf585..292941e9d 100644
--- a/libguile/symbols.c
+++ b/libguile/symbols.c
@@ -1,4 +1,4 @@
-/* Copyright 1995-1998,2000-2001,2003-2004,2006,2009,2011,2013,2015,2018,2022
+/* Copyright 
1995-1998,2000-2001,2003-2004,2006,2009,2011,2013,2015,2018,2022,2023
      Free Software Foundation, Inc.
 
    This file is part of Guile.
@@ -301,29 +301,8 @@ SCM_DEFINE (scm_make_symbol, "make-symbol", 1, 0, 0,
 
 SCM_DEFINE (scm_symbol_to_string, "symbol->string", 1, 0, 0, 
            (SCM s),
-           "Return the name of @var{symbol} as a string.  If the symbol was\n"
-           "part of an object returned as the value of a literal expression\n"
-           "(section @pxref{Literal expressions,,,r5rs, The Revised^5\n"
-           "Report on Scheme}) or by a call to the @code{read} procedure,\n"
-           "and its name contains alphabetic characters, then the string\n"
-           "returned will contain characters in the implementation's\n"
-           "preferred standard case---some implementations will prefer\n"
-           "upper case, others lower case.  If the symbol was returned by\n"
-           "@code{string->symbol}, the case of characters in the string\n"
-           "returned will be the same as the case in the string that was\n"
-           "passed to @code{string->symbol}.  It is an error to apply\n"
-           "mutation procedures like @code{string-set!} to strings returned\n"
-           "by this procedure.\n"
-           "\n"
-           "The following examples assume that the implementation's\n"
-           "standard case is lower case:\n"
-           "\n"
-           "@lisp\n"
-           "(symbol->string 'flying-fish)    @result{} \"flying-fish\"\n"
-           "(symbol->string 'Martin)         @result{}  \"martin\"\n"
-           "(symbol->string\n"
-           "   (string->symbol \"Malvina\")) @result{} \"Malvina\"\n"
-           "@end lisp")
+           "Return the name of @var{symbol} as a string.  The resulting\n"
+            "string is immutable.")
 #define FUNC_NAME s_scm_symbol_to_string
 {
   SCM_VALIDATE_SYMBOL (1, s);
@@ -334,26 +313,7 @@ SCM_DEFINE (scm_symbol_to_string, "symbol->string", 1, 0, 
0,
 
 SCM_DEFINE (scm_string_to_symbol, "string->symbol", 1, 0, 0, 
            (SCM string),
-           "Return the symbol whose name is @var{string}. This procedure\n"
-           "can create symbols with names containing special characters or\n"
-           "letters in the non-standard case, but it is usually a bad idea\n"
-           "to create such symbols because in some implementations of\n"
-           "Scheme they cannot be read as themselves.  See\n"
-           "@code{symbol->string}.\n"
-           "\n"
-           "The following examples assume that the implementation's\n"
-           "standard case is lower case:\n"
-           "\n"
-           "@lisp\n"
-           "(eq? 'mISSISSIppi 'mississippi) @result{} #t\n"
-           "(string->symbol \"mISSISSIppi\") @result{} @r{the symbol with name 
\"mISSISSIppi\"}\n"
-           "(eq? 'bitBlt (string->symbol \"bitBlt\")) @result{} #f\n"
-           "(eq? 'JollyWog\n"
-           "  (string->symbol (symbol->string 'JollyWog))) @result{} #t\n"
-           "(string=? \"K. Harper, M.D.\"\n"
-           "  (symbol->string\n"
-           "    (string->symbol \"K. Harper, M.D.\"))) @result{}#t\n"
-           "@end lisp")
+           "Return the symbol whose name is @var{string}.")
 #define FUNC_NAME s_scm_string_to_symbol
 {
   SCM_VALIDATE_STRING (1, string);
diff --git a/module/ice-9/test.scm b/module/ice-9/test.scm
index 179cfc35e..98c951606 100644
--- a/module/ice-9/test.scm
+++ b/module/ice-9/test.scm
@@ -1,4 +1,4 @@
-;; Copyright (C) 1991, 1992, 1993, 1994, 1995, 2006 Free Software Foundation, 
Inc.
+;; Copyright (C) 1991, 1992, 1993, 1994, 1995, 2006, 2023 Free Software 
Foundation, Inc.
 ;; 
 ;;;; This library is free software; you can redistribute it and/or
 ;;;; modify it under the terms of the GNU Lesser General Public
@@ -399,7 +399,7 @@
 ;;; Not for Guile
 ;(test #t eq? 'mISSISSIppi 'mississippi)
 ;(test #f 'string->symbol (eq? 'bitBlt (string->symbol "bitBlt")))
-(test 'JollyWog string->symbol (symbol->string 'JollyWog))
+(test 'HeyJeffrey string->symbol (symbol->string 'HeyJeffrey))
 
 (SECTION 6 5 5)
 (test #t number? 3)
diff --git a/test-suite/tests/r4rs.test b/test-suite/tests/r4rs.test
index 1e4243cae..f6455a207 100644
--- a/test-suite/tests/r4rs.test
+++ b/test-suite/tests/r4rs.test
@@ -1,5 +1,5 @@
 ;;;; r4rs.test --- tests for R4RS compliance      -*- scheme -*-
-;;;; Copyright (C) 1991, 1992, 1993, 1994, 1995, 1999, 2001, 2006 Free 
Software Foundation, Inc.
+;;;; Copyright (C) 1991, 1992, 1993, 1994, 1995, 1999, 2001, 2006, 2023 Free 
Software Foundation, Inc.
 ;;;; 
 ;;;; This library is free software; you can redistribute it and/or
 ;;;; modify it under the terms of the GNU Lesser General Public
@@ -413,7 +413,7 @@
 ;;; Not for Guile
 ;(test #t eq? 'mISSISSIppi 'mississippi)
 ;(test #f 'string->symbol (eq? 'bitBlt (string->symbol "bitBlt")))
-(test 'JollyWog string->symbol (symbol->string 'JollyWog))
+(test 'HeyJeffrey string->symbol (symbol->string 'HeyJeffrey))
 
 (SECTION 6 5 5)
 (test #t number? 3)

Reply via email to