From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Kastrup Newsgroups: gmane.emacs.devel Subject: Re: beginning-of-defun (again) Date: Sat, 31 Oct 2015 13:24:19 +0100 Message-ID: <87pozv2pl8.fsf@fencepost.gnu.org> References: <56320200.4050503@online.de> <56331269.1040804@online.de> <56347561.2010900@online.de> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1446294357 10279 80.91.229.3 (31 Oct 2015 12:25:57 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 31 Oct 2015 12:25:57 +0000 (UTC) Cc: rms@gnu.org, emacs-devel@gnu.org To: Andreas =?iso-8859-1?Q?R=F6hler?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Oct 31 13:25:52 2015 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1ZsVEF-00050g-Ez for ged-emacs-devel@m.gmane.org; Sat, 31 Oct 2015 13:25:51 +0100 Original-Received: from localhost ([::1]:55477 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZsVEE-0002kj-FO for ged-emacs-devel@m.gmane.org; Sat, 31 Oct 2015 08:25:50 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:56813) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZsVDt-0002ix-H8 for emacs-devel@gnu.org; Sat, 31 Oct 2015 08:25:30 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZsVDs-0001KZ-IM for emacs-devel@gnu.org; Sat, 31 Oct 2015 08:25:29 -0400 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:39647) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZsVDs-0001KQ-GN; Sat, 31 Oct 2015 08:25:28 -0400 Original-Received: from localhost ([127.0.0.1]:53462 helo=lola) by fencepost.gnu.org with esmtp (Exim 4.82) (envelope-from ) id 1ZsVDl-0007Yy-2Y; Sat, 31 Oct 2015 08:25:21 -0400 Original-Received: by lola (Postfix, from userid 1000) id 18650DF870; Sat, 31 Oct 2015 13:24:19 +0100 (CET) In-Reply-To: <56347561.2010900@online.de> ("Andreas =?iso-8859-1?Q?R=F6hle?= =?iso-8859-1?Q?r=22's?= message of "Sat, 31 Oct 2015 09:01:37 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::e X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:193012 Archived-At: Andreas R=F6hler writes: > On 31.10.2015 00:14, Richard Stallman wrote: >> [[[ 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. ]]] >> >> > With emacs -Q, C-M-a from behind example below, stops at "(bar)", >> > missing the beginning of function. >> >> > (defun foo () >> > (insert " >> > (bar)")) >> >> Our convention is that you should write it this way: >> >> (defun foo () >> (insert " >> \(bar)")) >> > > A convention which probably predates Aristoteles :) > Working-by-convention is rather a social thing... > > That design was a real nuisance when generating and writing functions > on the fly. > Sure, it's possible to live with it. But why not remove that > constraint, if possible? Because reparsing every file from its beginning in order to indent the current line is too expensive for large files? The meaning of every Lisp file can be changed by putting (setq everything " at its beginning. There really is no correct way to determine current state apart from parsing from the start. So we have a convention for an "incorrect way" of avoiding parsing from the start. --=20 David Kastrup