From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Stephen J. Turnbull" Newsgroups: gmane.emacs.devel Subject: Re: Intervals crash Date: Sat, 25 Sep 2010 23:34:08 +0900 Message-ID: <87sk0x28pr.fsf@uwakimon.sk.tsukuba.ac.jp> References: <87aan82uar.fsf@stupidchicken.com> <83bp7ouw2u.fsf@gnu.org> <87bp7n3c19.fsf@uwakimon.sk.tsukuba.ac.jp> <83iq1vtv3y.fsf@gnu.org> <87wrqb1q2b.fsf@uwakimon.sk.tsukuba.ac.jp> <83fwwztq4e.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1285426786 27854 80.91.229.12 (25 Sep 2010 14:59:46 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sat, 25 Sep 2010 14:59:46 +0000 (UTC) Cc: cyd@stupidchicken.com, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Sep 25 16:59:44 2010 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1OzWE1-0000Io-86 for ged-emacs-devel@m.gmane.org; Sat, 25 Sep 2010 16:59:41 +0200 Original-Received: from localhost ([127.0.0.1]:33452 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OzWE0-0000kE-QI for ged-emacs-devel@m.gmane.org; Sat, 25 Sep 2010 10:59:40 -0400 Original-Received: from [140.186.70.92] (port=44037 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OzWDu-0000k9-HH for emacs-devel@gnu.org; Sat, 25 Sep 2010 10:59:35 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OzWDt-0001wf-FO for emacs-devel@gnu.org; Sat, 25 Sep 2010 10:59:34 -0400 Original-Received: from [130.158.254.171] (port=39129 helo=dmail02.cc.tsukuba.ac.jp) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OzWDr-0001vB-7W; Sat, 25 Sep 2010 10:59:31 -0400 Original-Received: from imss12.cc.tsukuba.ac.jp (unknown [130.158.254.130]) by dmail02.cc.tsukuba.ac.jp (Postfix) with ESMTP id B2661F4B84; Sat, 25 Sep 2010 23:42:13 +0900 (JST) Original-Received: from imss12.cc.tsukuba.ac.jp (imss12.cc.tsukuba.ac.jp [127.0.0.1]) by postfix.imss71 (Postfix) with ESMTP id D87682AF543; Sat, 25 Sep 2010 23:42:00 +0900 (JST) Original-Received: from mgmt1.sk.tsukuba.ac.jp (unknown [130.158.97.223]) by imss12.cc.tsukuba.ac.jp (Postfix) with ESMTP id C95BF2AF542; Sat, 25 Sep 2010 23:42:00 +0900 (JST) Original-Received: from uwakimon.sk.tsukuba.ac.jp (uwakimon.sk.tsukuba.ac.jp [130.158.99.156]) by mgmt1.sk.tsukuba.ac.jp (Postfix) with ESMTP id C76F83FA04CA; Sat, 25 Sep 2010 23:42:00 +0900 (JST) Original-Received: by uwakimon.sk.tsukuba.ac.jp (Postfix, from userid 1000) id 38A1A1A25CE; Sat, 25 Sep 2010 23:34:08 +0900 (JST) In-Reply-To: <83fwwztq4e.fsf@gnu.org> X-Mailer: VM undefined under 21.5 (beta29) "garbanzo" ed3b274cc037 XEmacs Lucid (x86_64-unknown-linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:130848 Archived-At: Eli Zaretskii writes: > > From: "Stephen J. Turnbull" > > Cc: cyd@stupidchicken.com, > > emacs-devel@gnu.org > > Date: Fri, 24 Sep 2010 17:52:28 +0900 > > > > Eli Zaretskii writes: > > > > > If you really need the full range of size_t or EMACS_UINT, > > > there's little you can do in practice. > > Practically speaking, Emacs doesn't ever *really* need the full > > range of size_t, since Lisp can't represent it in a fixnum. It > > might be nice to have a way to store them, but you can use conses > > of fixnums, floats, or the occasionally-requested bignums for > > that. > > I didn't mean in APIs exposed to Lisp. I meant Emacs internals. What makes you think I don't understand that? I will repeat what I said earlier: *XEmacs internals don't have EMACS_UINT any more*, and XEmacs works spectacularly better (in the sense of fewer crashes, which I consider spectacularly bad things to have happen, YMMV), and is easier to understand. What's not to like about that? Yes, I understand a lot of work needs to be done to get there. But (unless Emacs has some lingering Heisencrashes that aren't understood but might be related to infrequently called APIs that sometimes return negative numbers that are cast to unsigned, which of course I'm sure it doesn't ;-) there's no hurry. Take your time; I'm just suggesting that EMACS_UINT removal is a worthy long term goal as every such variable is an accident waiting to happen with no compensating benefits. That doesn't mean that we don't have unsigneds; of course we do, because they're part of the POSIX API. We just don't allow them to exist in XEmacs proper any longer than it takes to test for overflow and convert them to EMACS_INT, or to convert from EMACS_INT to unsigned and pass to the external API.