From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Andrea Corallo Newsgroups: gmane.emacs.devel Subject: Re: Declaring Lisp function types Date: Mon, 26 Feb 2024 11:52:08 -0500 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="35677"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: emacs-devel@gnu.org To: Richard Stallman Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Feb 26 17:53:11 2024 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 1reeE2-000929-KE for ged-emacs-devel@m.gmane-mx.org; Mon, 26 Feb 2024 17:53:10 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1reeDB-0001dY-Cq; Mon, 26 Feb 2024 11:52:17 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1reeD9-0001dO-Ly for emacs-devel@gnu.org; Mon, 26 Feb 2024 11:52:15 -0500 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1reeD9-0006tf-Ev for emacs-devel@gnu.org; Mon, 26 Feb 2024 11:52:15 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=sozvD0ZByqdNtzzKObi6LrXSs5CHCSmodqj6HeRZNQs=; b=VRSvX/ZbzOJKDEYKcdtC T7ketb6bZjyW1tufZhvlNyYPxFjxyb/CHuBf5/cGhlqcM+Y2qy+FUNaj/ak3Wp1JGGM3V7QcUZddo 9g84xNdBbGtnNo9kKgq8sTEbr145bqXxTf/pZLHyzTC05++kVgg16G+W2xueIDtQo78eJrsGC3HHA 6VCqd1WpnDxCtgpwKYZ+2ljnSG8QHlrSppaPfy18ZOskfKBCsG9+8UXdnsuTALoiyFqlQtnntKbBK LPNi/NskZWmlxEzOlMH/3kJwxNxj0EjksHRYHCOljqOVnzcEpMCphw2P1QjDYl0sysQKdYHSsVutw 2k5u9EKwd8T6mg==; Original-Received: from acorallo by fencepost.gnu.org with local (Exim 4.90_1) (envelope-from ) id 1reeD2-0007i5-U0; Mon, 26 Feb 2024 11:52:08 -0500 In-Reply-To: (Richard Stallman's message of "Sun, 25 Feb 2024 22:38:53 -0500") X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:316569 Archived-At: Richard Stallman writes: > [[[ 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. ]]] > > What is the goal of supporting function type declarations in Emacs > Lisp? Hi Richard, ATM we have several function type declarations kept in a different file and naturally they get out of sync over time. So yes one reason is to move the declarations where functions are actually defined. These declarations are in use by the native compiler in order to help generating better code, computing automatically the function signature of non type declared functions (signatures which we present in C-h f) and (hope in the close future) aid the programmer by performing extra error checking at compile time. Thanks Andrea