From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Emanuel Berg via Users list for the GNU Emacs text editor Newsgroups: gmane.emacs.help Subject: Re: this is United States calling (was: Re: [External] : Is there any difference between `equal' and `string=' for strings?) Date: Sat, 21 Aug 2021 06:20:10 +0200 Message-ID: <878s0v5szp.fsf@zoho.eu> References: <875yw2vxqh.fsf@mbork.pl> <87k0kf5uph.fsf_-_@zoho.eu> <87czq75ufm.fsf@zoho.eu> Reply-To: Emanuel Berg Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="14892"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) To: help-gnu-emacs@gnu.org Cancel-Lock: sha1:+DsduZ7raUaExxAkWizPdBHc52A= Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Sat Aug 21 06:21:09 2021 Return-path: Envelope-to: geh-help-gnu-emacs@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 1mHIVI-0003cq-U0 for geh-help-gnu-emacs@m.gmane-mx.org; Sat, 21 Aug 2021 06:21:08 +0200 Original-Received: from localhost ([::1]:60460 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mHIVH-0007cz-Pc for geh-help-gnu-emacs@m.gmane-mx.org; Sat, 21 Aug 2021 00:21:07 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:43732) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mHIUa-0007bt-QE for help-gnu-emacs@gnu.org; Sat, 21 Aug 2021 00:20:24 -0400 Original-Received: from ciao.gmane.io ([116.202.254.214]:42804) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mHIUX-0001xd-SQ for help-gnu-emacs@gnu.org; Sat, 21 Aug 2021 00:20:24 -0400 Original-Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1mHIUW-0002l2-0Q for help-gnu-emacs@gnu.org; Sat, 21 Aug 2021 06:20:20 +0200 X-Injected-Via-Gmane: http://gmane.org/ Mail-Followup-To: help-gnu-emacs@gnu.org Mail-Copies-To: never Received-SPF: pass client-ip=116.202.254.214; envelope-from=geh-help-gnu-emacs@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.io gmane.emacs.help:132636 Archived-At: Another thing with respect to functions and the formal parameters are that in other languages, e.g. C++, one can do function overloading where the function names are the same but the sets of parameters differ, this amounts to two (or more) functions with distinct "signatures". I guess one cannot do that (easily) in Lisp since a function is just a symbol with a set `symbol-function'. The inferred function types of SML, expressed as mappings, were sort of cool but the prototypes or signatures of C++ - is that something they have because, frankly, C++ isn't good enough? If so, interesting that it brought along the possibility of overloading ... Now in Lisp we have arbitrary number of arguments (&rest), &optional arguments, default values (Common Lisp has, so `cl-defun' for Elisp/Jean). Hm ... is the unused argument _ a convention, or is it actually impossible to use? Anyway much better than overloading IMO. Perhaps because of the dynamic type system it isn't needed? One can just have one function, find out what types the arguments are, and branch on that. Perhaps one can do that in C++ as well in just one function, with pointers, or by converting the int(eger) to a float ... -- underground experts united https://dataswamp.org/~incal