From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Ken Raeburn Newsgroups: gmane.lisp.guile.devel Subject: Re: redoing SCM representation in 2.2 Date: Sun, 15 May 2011 05:02:17 -0400 Message-ID: References: <87ei42qmmf.fsf@netris.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 (Apple Message framework v1084) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1305450150 5825 80.91.229.12 (15 May 2011 09:02:30 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sun, 15 May 2011 09:02:30 +0000 (UTC) Cc: Mark H Weaver , guile-devel To: Andy Wingo Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Sun May 15 11:02:25 2011 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1QLXDV-0000As-5d for guile-devel@m.gmane.org; Sun, 15 May 2011 11:02:25 +0200 Original-Received: from localhost ([::1]:50687 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QLXDT-0003Rn-LA for guile-devel@m.gmane.org; Sun, 15 May 2011 05:02:23 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:42358) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QLXDR-0003RX-Ae for guile-devel@gnu.org; Sun, 15 May 2011 05:02:22 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QLXDQ-0001Fj-5s for guile-devel@gnu.org; Sun, 15 May 2011 05:02:21 -0400 Original-Received: from mail-qy0-f176.google.com ([209.85.216.176]:33624) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QLXDQ-0001Ff-1n for guile-devel@gnu.org; Sun, 15 May 2011 05:02:20 -0400 Original-Received: by qyk30 with SMTP id 30so2607964qyk.0 for ; Sun, 15 May 2011 02:02:19 -0700 (PDT) Original-Received: by 10.224.176.67 with SMTP id bd3mr2618819qab.36.1305450139355; Sun, 15 May 2011 02:02:19 -0700 (PDT) Original-Received: from [10.0.0.158] (c-24-128-48-142.hsd1.ma.comcast.net [24.128.48.142]) by mx.google.com with ESMTPS id f5sm2514339qck.8.2011.05.15.02.02.18 (version=TLSv1/SSLv3 cipher=OTHER); Sun, 15 May 2011 02:02:18 -0700 (PDT) In-Reply-To: X-Mailer: Apple Mail (2.1084) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Received-From: 209.85.216.176 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:12494 Archived-At: On May 14, 2011, at 05:47, Andy Wingo wrote: > However, I realized that this isn't going to work on 32-bit, and for = an > unexpected reason: GC. The problem is that the low 32-bits can be > interpreted as a pointer, so you need to tag those bits to make the > payloads of immediate values like integers or characters not = confusable > with pointers, and that takes away any potential advantage (wider = fixnum > range for example). Is that really any more of an issue this way than with the current = encoding -- if not for SCM, then for heap data structures including both = SCM objects and integers or characters? I thought the GC code already = had to cope with things looking like they could be pointers but not = actually corresponding to anything allocated via the GC library. Ken=