From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: prj@po.cwru.edu (Paul Jarc) Newsgroups: gmane.lisp.guile.devel Subject: Re: The relationship between SCM and scm_t_bits. Date: Mon, 03 May 2004 12:21:18 -0400 Organization: What did you have in mind? A short, blunt, human pyramid? Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Message-ID: References: NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1083602864 12084 80.91.224.253 (3 May 2004 16:47:44 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Mon, 3 May 2004 16:47:44 +0000 (UTC) Cc: guile-devel@gnu.org Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Mon May 03 18:47:14 2004 Return-path: Original-Received: from monty-python.gnu.org ([199.232.76.173]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1BKgb4-0001F1-00 for ; Mon, 03 May 2004 18:47:14 +0200 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.30) id 1BKgVU-000174-Tr for guile-devel@m.gmane.org; Mon, 03 May 2004 12:41:28 -0400 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.30) id 1BKgVP-00016I-9r for guile-devel@gnu.org; Mon, 03 May 2004 12:41:23 -0400 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.30) id 1BKgCV-0002f3-BT for guile-devel@gnu.org; Mon, 03 May 2004 12:22:22 -0400 Original-Received: from [129.22.104.46] (helo=mirapoint1.tis.cwru.edu) by monty-python.gnu.org with esmtp (TLSv1:DES-CBC3-SHA:168) (Exim 4.30) id 1BKgCU-0002PE-RT for guile-devel@gnu.org; Mon, 03 May 2004 12:21:50 -0400 Original-Received: from multivac.cwru.edu (multivac.ITS.CWRU.Edu [129.22.114.26]) by mirapoint1.tis.cwru.edu (MOS 3.4.3-CR) with SMTP id BJQ81763; Mon, 3 May 2004 12:21:19 -0400 (EDT) Original-Received: (qmail 27255 invoked by uid 500); 3 May 2004 16:21:40 -0000 Original-To: Marius Vollmer In-Reply-To: (Marius Vollmer's message of "Mon, 03 May 2004 17:06:20 +0200") Mail-Copies-To: nobody Mail-Followup-To: Marius Vollmer , guile-devel@gnu.org Original-Lines: 32 User-Agent: Gnus/5.110002 (No Gnus v0.2) Emacs/21.3 (gnu/linux) X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.4 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 Xref: main.gmane.org gmane.lisp.guile.devel:3665 X-Report-Spam: http://spam.gmane.org/gmane.lisp.guile.devel:3665 Marius Vollmer wrote: > For example, consider a list that is pointed to by a global variable > and some fairly standard way of dealing with singly-linked lists in C: I guess the simplest solution would be "just don't do that". (I.e., the C code would use an scm_t_bits* variable with SCM_PACK/SCM_UNPACK instead of using SCM directly.) > Luckily, code like this works on the platforms that Guile is used on, > but it still is quite unclean, I'd say. I agree. > We could make a new guarantee that says that SCM_SET_SMOB_DATA (etc) > can store any pointer that is cast to a scm_t_bits and any integer > that fits into 'unsigned int', say. That would be enough for my code, I think. Of course it should remain source-compatible, too: #define SCM_SET_SMOB_DATA(smob, bits) SCM_SET_SMOB_OBJECT(smob, SCM_PACK(bits)) > Should we (gradually and with deprecation and everyhing) remove > scm_t_bits from the smob API completely? I have not thought this > thru, but we might and with something that is not really an > improvement, just different. I think it would be an improvement, in conceptual cleanliness if nothing else. It'll make the C interface that much easier to work with. paul _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://mail.gnu.org/mailman/listinfo/guile-devel