GNU bug report logs -
#38598
26.3; Document relation between `make-symbol` and `gensym`
Previous Next
Reported by: Drew Adams <drew.adams <at> oracle.com>
Date: Fri, 13 Dec 2019 20:38:02 UTC
Severity: normal
Found in version 26.3
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Sat, 14 Dec 2019 11:30:00 +0200
with message-id <83blsb6yqv.fsf <at> gnu.org>
and subject line Re: bug#38598: 26.3; Document relation between `make-symbol` and `gensym`
has caused the debbugs.gnu.org bug report #38598,
regarding 26.3; Document relation between `make-symbol` and `gensym`
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
38598: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38598
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
(See https://emacs.stackexchange.com/a/54361/105.)
The Common-Lisp doc is clear about the similarity and difference between
`make-symbol` and `gensym`. The Emacs-Lisp doc says nothing about this.
Please consider mentioning this in (elisp) `Creating Symbols'. Such
info can help users better understand when they might want to use one or
the other of these functions.
Yes, this info can be gleaned by carefully reading their individual
descriptions (how the symbol-naming is done). But it would help users
to state it clearly. The Common-Lisp doc does this simply, with a
single parenthetical sentence:
(The only difference between gensym and make-symbol is in how the
new-symbol's name is determined.)
http://clhs.lisp.se/Body/f_gensym.htm
In GNU Emacs 26.3 (build 1, x86_64-w64-mingw32)
of 2019-08-29
Repository revision: 96dd0196c28bc36779584e47fffcca433c9309cd
Windowing system distributor `Microsoft Corp.', version 10.0.17763
Configured using:
`configure --without-dbus --host=x86_64-w64-mingw32
--without-compress-install 'CFLAGS=-O2 -static -g3''
[Message part 3 (message/rfc822, inline)]
> Date: Fri, 13 Dec 2019 12:35:13 -0800 (PST)
> From: Drew Adams <drew.adams <at> oracle.com>
>
> (See https://emacs.stackexchange.com/a/54361/105.)
>
> The Common-Lisp doc is clear about the similarity and difference between
> `make-symbol` and `gensym`. The Emacs-Lisp doc says nothing about this.
>
> Please consider mentioning this in (elisp) `Creating Symbols'. Such
> info can help users better understand when they might want to use one or
> the other of these functions.
>
> Yes, this info can be gleaned by carefully reading their individual
> descriptions (how the symbol-naming is done). But it would help users
> to state it clearly.
Thanks, but I find the current documentation clear enough:
-- Function: make-symbol name
This function returns a newly-allocated, uninterned symbol whose
name is NAME (which must be a string). Its value and function
definition are void, and its property list is ‘nil’. In the
example below, the value of ‘sym’ is not ‘eq’ to ‘foo’ because it
is a distinct uninterned symbol whose name is also ‘foo’.
(setq sym (make-symbol "foo"))
⇒ foo
(eq sym 'foo)
⇒ nil
-- Function: gensym &optional prefix
This function returns a symbol using ‘make-symbol’, whose name is
made by appending ‘gensym-counter’ to PREFIX. The prefix defaults
to ‘"g"’.
I see nothing that could be gained by adding any explicit sentence
about the difference, since that would simply be a rewording of what
is already said right there.
So I'm closing this bug report.
This bug report was last modified 5 years and 162 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.