From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: When will emacs 27.1 be officially released? Date: Fri, 03 Jul 2020 22:52:06 -0400 Message-ID: References: <28BB39D5-074F-4450-A747-C2BFB37AA482@gnu.org> <87pn9g6fuo.fsf@gmail.com> <83bll0ze1x.fsf@gnu.org> <03c328d0-b446-9806-5b7b-1cda10a50eb7@cs.ucla.edu> <835zb8z84k.fsf@gnu.org> <93bffae8-e8e5-2eea-7087-5a894cbfea0c@cs.ucla.edu> <87366964py.fsf@gnu.org> <83d05dw2tz.fsf@gnu.org> <87o8oxhxhg.fsf@gnu.org> <83zh8gvmg8.fsf@gnu.org> Reply-To: rms@gnu.org Content-Type: text/plain; charset=Utf-8 Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="12213"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org, eggert@cs.ucla.edu, liwei.ma@gmail.com, kevin.legouguec@gmail.com, tsdh@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Jul 04 04:52:40 2020 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jrYIC-00034b-2a for ged-emacs-devel@m.gmane-mx.org; Sat, 04 Jul 2020 04:52:40 +0200 Original-Received: from localhost ([::1]:58988 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jrYIB-0006Z6-59 for ged-emacs-devel@m.gmane-mx.org; Fri, 03 Jul 2020 22:52:39 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:37672) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jrYHi-0006A1-Iu for emacs-devel@gnu.org; Fri, 03 Jul 2020 22:52:10 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:55525) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jrYHg-0000UM-JI; Fri, 03 Jul 2020 22:52:08 -0400 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.82) (envelope-from ) id 1jrYHe-0008Ny-CL; Fri, 03 Jul 2020 22:52:06 -0400 In-Reply-To: <83zh8gvmg8.fsf@gnu.org> (message from Eli Zaretskii on Fri, 03 Jul 2020 14:59:19 +0300) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:252651 Archived-At: [[[ 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)