all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Richard Stallman <rms@gnu.org>
To: Eli Zaretskii <eliz@gnu.org>
Cc: emacs-devel@gnu.org, eggert@cs.ucla.edu, liwei.ma@gmail.com,
	kevin.legouguec@gmail.com, tsdh@gnu.org
Subject: Re: When will emacs 27.1 be officially released?
Date: Fri, 03 Jul 2020 22:52:06 -0400	[thread overview]
Message-ID: <E1jrYHe-0008Ny-CL@fencepost.gnu.org> (raw)
In-Reply-To: <83zh8gvmg8.fsf@gnu.org> (message from Eli Zaretskii on Fri, 03 Jul 2020 14:59:19 +0300)

[[[ To any NSA and FBI agents reading my email: please consider    ]]]
[[[ whether defending the US Constitution against all enemies,     ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]

  > For example, the imperative style is IMO inappropriate for the manual
  > (think about reading the book), while the indicative style of the
  > manual wastes precious screen space if we'd use it in doc strings.

That is one of many big differences.  Manual text and doc string text
are different at every level.  Everyone, please read the node Doc
Strings and Manuals in the GNU Coding Standards before posting about
this topic.

Each doc string is meant to be read by itself, so it must explain
the necessary background that we cannot assume the user knows.

By contrast, the manual consists of sections, each of which usually
describes several functions.  When writing the descriptions of those
functions, we avoid duplication.  Often the section states some background
outside the definitions of individual functions.

In this section, the function definitions don't say that TABLE is a
hash table.  They don't need to.  The title and introduction show
that.

BTW, do you see the style error in the definition of gethash?


8.2 Hash Table Access
=====================

This section describes the functions for accessing and storing
associations in a hash table.  In general, any Lisp object can be used
as a hash key, unless the comparison method imposes limits.  Any Lisp
object can also be used as the value.

 -- Function: gethash key table &optional default
     This function looks up KEY in TABLE, and returns its associated
     VALUE—or DEFAULT, if KEY has no association in TABLE.

 -- Function: puthash key value table
     This function enters an association for KEY in TABLE, with value
     VALUE.  If KEY already has an association in TABLE, VALUE replaces
     the old associated value.

 -- Function: remhash key table
     This function removes the association for KEY from TABLE, if there
     is one.  If KEY has no association, ‘remhash’ does nothing.

     Common Lisp note: In Common Lisp, ‘remhash’ returns non-‘nil’ if it
     actually removed an association and ‘nil’ otherwise.  In Emacs
     Lisp, ‘remhash’ always returns ‘nil’.

 -- Function: clrhash table
     This function removes all the associations from hash table TABLE,
     so that it becomes empty.  This is also called “clearing” the hash
     table.

     Common Lisp note: In Common Lisp, ‘clrhash’ returns the empty
     TABLE.  In Emacs Lisp, it returns ‘nil’.

 -- Function: maphash function table
     This function calls FUNCTION once for each of the associations in
     TABLE.  The function FUNCTION should accept two arguments—a KEY
     listed in TABLE, and its associated VALUE.  ‘maphash’ returns
     ‘nil’.



-- 
Dr Richard Stallman
Chief GNUisance of the GNU Project (https://gnu.org)
Founder, Free Software Foundation (https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)





  reply	other threads:[~2020-07-04  2:52 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-30  2:52 When will emacs 27.1 be officially released? Liwei Ma
2020-06-30  3:55 ` Eli Zaretskii
2020-06-30  8:12   ` tomas
2020-06-30  9:51   ` Kévin Le Gouguec
2020-06-30 16:58     ` Eli Zaretskii
2020-06-30 18:52       ` Paul Eggert
2020-06-30 19:06         ` Eli Zaretskii
2020-06-30 22:17           ` Paul Eggert
2020-06-30 22:31             ` Dmitry Gutov
2020-07-01  0:03               ` Paul Eggert
2020-07-01 14:29               ` Eli Zaretskii
2020-07-01 17:47                 ` Dmitry Gutov
2020-07-01 17:52                   ` Paul Eggert
2020-07-01 17:55                     ` Dmitry Gutov
2020-07-01 18:13                       ` Eli Zaretskii
2020-07-01 18:16                         ` Dmitry Gutov
2020-07-01 18:12                   ` Eli Zaretskii
2020-07-01 14:33             ` Eli Zaretskii
2020-07-02  3:49               ` Richard Stallman
2020-07-02 13:04                 ` Eli Zaretskii
2020-07-03  2:21                   ` Richard Stallman
2020-07-02 20:29             ` Tassilo Horn
2020-07-02 20:36               ` Paul Eggert
2020-07-02 20:55                 ` Tassilo Horn
2020-07-04  2:53                 ` Richard Stallman
2020-07-04  6:41                   ` Eli Zaretskii
2020-07-05  2:35                     ` Richard Stallman
2020-07-05 14:33                       ` Eli Zaretskii
2020-07-03  6:05               ` Eli Zaretskii
2020-07-03  7:24                 ` Tassilo Horn
2020-07-03 11:59                   ` Eli Zaretskii
2020-07-04  2:52                     ` Richard Stallman [this message]
2020-06-30 22:09       ` Kévin Le Gouguec
2020-07-01 14:49         ` Eli Zaretskii
2020-07-02  9:00           ` Kévin Le Gouguec
2020-07-02 13:12             ` Eli Zaretskii
2020-07-02 13:44               ` Kévin Le Gouguec
2020-07-03  0:48       ` Do pretests reach end users? (was: When will emacs 27.1 be officially released?) Dmitry Alexandrov
2020-07-03  6:21         ` Eli Zaretskii
2020-07-03  9:59           ` Do pretests reach end users? Dmitry Gutov
2020-07-03 11:43             ` Eli Zaretskii
2020-07-03 20:23               ` Dmitry Gutov
2020-07-04  6:15                 ` Eli Zaretskii
2020-07-04  1:31           ` Dmitry Alexandrov
2020-07-04  6:32             ` Eli Zaretskii
2020-07-05  4:18               ` Dmitry Alexandrov
2020-07-04 11:11             ` Phillip Lord
2020-07-05  4:23               ` Dmitry Alexandrov
2020-07-05 21:15                 ` Phillip Lord
2020-07-05 16:55             ` Sean Whitton
2020-06-30 13:01   ` When will emacs 27.1 be officially released? Basil L. Contovounesios
2020-06-30 14:06     ` Stefan Monnier
2020-06-30 14:28     ` Eli Zaretskii
2020-06-30 14:34 ` Rostislav Svoboda

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=E1jrYHe-0008Ny-CL@fencepost.gnu.org \
    --to=rms@gnu.org \
    --cc=eggert@cs.ucla.edu \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=kevin.legouguec@gmail.com \
    --cc=liwei.ma@gmail.com \
    --cc=tsdh@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.