From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Mario Lang Newsgroups: gmane.emacs.devel Subject: EIEIO default constructor function Date: Sat, 03 Apr 2021 05:50:42 +0200 Message-ID: <87y2e0rppp.fsf@blind.guru> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="23434"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1.50 (gnu/linux) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Apr 03 05:51:28 2021 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 1lSXJo-0005yA-I5 for ged-emacs-devel@m.gmane-mx.org; Sat, 03 Apr 2021 05:51:28 +0200 Original-Received: from localhost ([::1]:33778 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lSXJn-0004o9-KG for ged-emacs-devel@m.gmane-mx.org; Fri, 02 Apr 2021 23:51:27 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:55476) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lSXJG-0004Ob-W8 for emacs-devel@gnu.org; Fri, 02 Apr 2021 23:50:55 -0400 Original-Received: from familiekainz.at ([37.187.20.171]:44530 helo=ns3035380.ip-37-187-20.eu) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lSXJE-0004uf-Qo for emacs-devel@gnu.org; Fri, 02 Apr 2021 23:50:54 -0400 Original-Received: by ns3035380.ip-37-187-20.eu (Postfix, from userid 110) id 53579861; Sat, 3 Apr 2021 03:50:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=blind.guru; s=mail; t=1617421848; bh=LFw6fDnh73LjAq7mhXRvCkLoyBAiv0g8nqWy3aL6Bdg=; h=From:To:Subject:Date:From; b=Hu5pb73YJxUSfpRJlaWNIY6hOCZgHU5Cqeu/nQ7RTelf/qh1NqnWyqb2ezyZwBOUi JINTA+ctLTofUSR5Gz+gctOBePMFSeXkFKKVYlYr5c2j9egTgJCkntxWQn+iK+jzNJ hznk67UPMPv6qga7pOlgqtJHgHS2ZJXGnPCakDdA= Original-Received: from x1.blind.guru (84-115-55-45.cable.dynamic.surfer.at [84.115.55.45]) by ns3035380.ip-37-187-20.eu (Postfix) with ESMTPSA id 5A0BE7FB for ; Sat, 3 Apr 2021 03:50:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=blind.guru; s=mail; t=1617421845; bh=LFw6fDnh73LjAq7mhXRvCkLoyBAiv0g8nqWy3aL6Bdg=; h=From:To:Subject:Date:From; b=I0R1eSaUgCkXlpur/quy+Xu2fcEbH3zFpTxyhs47bIYPaXjkYRG7Qyn81BdtikpZs lEtce25z3Mvy8WDtCbFbri1VJrQROakIQ8hbdkV1GWv7Btdv9yTSMBhKpmCTc9XRtW md7i3rnjrBi1WZFaa4fGYdMHIR7ReGkXVR10l1ho= Original-Received: by x1.blind.guru (Postfix, from userid 1000) id 1CA00E803FF; Sat, 3 Apr 2021 05:50:43 +0200 (CEST) Received-SPF: pass client-ip=37.187.20.171; envelope-from=mlang@blind.guru; helo=ns3035380.ip-37-187-20.eu X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action 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:267314 Archived-At: Hi. While porting a CLOS based project over to Elisp, I notice that there seems to be no way to disable the creation of a default constructor function with `defclass'. I am getting a redefinition warning because I am defining my own "constructor" with the same name. This is all just naming-fu, i.e., I know I could just rename the class to avoid the conflict. But I am wondering: `make-instance' is a nice way of avoiding namespace pollution if several classes are involved. In other words, avoiding the creation of yet another function might be desireable in some situations. So my question is, what is the rationale behind *always* creating a wrapper for `make-instance'? Am I missing something important? Could we perhaps add some sort of class-option to disable the wrapper creation? --=20 CYa, =E2=A1=8D=E2=A0=81=E2=A0=97=E2=A0=8A=E2=A0=95