From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Marius Vollmer Newsgroups: gmane.lisp.guile.devel Subject: Re: Summary of config.h variables and questions. Date: 06 Mar 2003 15:37:55 +0100 Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Message-ID: <87of4otvb0.fsf@zagadka.ping.de> References: <87znoal646.fsf@raven.i.defaultvalue.org> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1046962031 11263 80.91.224.249 (6 Mar 2003 14:47:11 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Thu, 6 Mar 2003 14:47:11 +0000 (UTC) Cc: guile-devel@gnu.org Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Thu Mar 06 15:47:09 2003 Return-path: Original-Received: from monty-python.gnu.org ([199.232.76.173]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 18qwYO-0002O5-00 for ; Thu, 06 Mar 2003 15:41:01 +0100 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.10.13) id 18qwYh-0002Cf-07 for guile-devel@m.gmane.org; Thu, 06 Mar 2003 09:41:19 -0500 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.10.13) id 18qwY0-0001qE-00 for guile-devel@gnu.org; Thu, 06 Mar 2003 09:40:36 -0500 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.10.13) id 18qwXm-0001Nt-00 for guile-devel@gnu.org; Thu, 06 Mar 2003 09:40:23 -0500 Original-Received: from [129.217.163.6] (helo=zagadka.ping.de) by monty-python.gnu.org with smtp (Exim 4.10.13) id 18qwVS-0008Bh-00 for guile-devel@gnu.org; Thu, 06 Mar 2003 09:37:58 -0500 Original-Received: (qmail 10878 invoked by uid 1000); 6 Mar 2003 14:37:55 -0000 Original-To: Rob Browning In-Reply-To: <87znoal646.fsf@raven.i.defaultvalue.org> Original-Lines: 74 User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1b5 Precedence: list List-Id: Developers list for Guile, the GNU extensibility library List-Help: List-Post: List-Subscribe: , List-Archive: List-Unsubscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: main.gmane.org gmane.lisp.guile.devel:2027 X-Report-Spam: http://spam.gmane.org/gmane.lisp.guile.devel:2027 Rob Browning writes: > I've also been through *all* of our defines in config.h and evaluated > each one to figure out what should be done with it. Excellent work! Thank a lot for doing this, Rob! Since this is a major change, we should not be doing it in the 1.6 series unless there is a real and specific problem with them (as with PACKAGE). For 1.7, we can make more sweeping changes to offer better alternatives (see below). > The second category is comprised of those symbols that we were using > in our public headers, but whose names are probably not suitable for > the global namespace. These I haven't done anything about because I > wanted to see how everyone else thought we should handle them. One > option would be to add an SCM_ prefix to all of their names and > carry on. Of course doing so would break any client code that was > using these symbols, but this may be a case where such a change is > warranted, since we probably shouldn't have used these names > publically in the first place. Agreed. I regard it as a bug that we export most of these symbols, not as a feature. However, some of these macros are specific to Guile (such as USE_THREADS) and we should keep them around as a deprecated feature for a few years. > Note that "const" and "inline" above are normally #defined by > configure in config.h to be something suitable for the given platform > when possible, or #undef'ed otherwise. If we have been (or want to) > take advantage of this facility in our public headers, we probably > need to use SCM_INLINE and SCM_CONST or similar... Yes. "inline" and "const" are not specific to Guile and people should not expect Guile to provide definitions for them. > So presuming we don't mind removing any of these symbols from our > public API, we should be finished with them: We should keep these, since they have a proper name already: > GUILE_DEBUG_MALLOC We should deprecate-and-keep these: > DYNAMIC_LINKING > GUILE_ISELECT > READER_EXTENSIONS > STACK_DIRECTION > USE_THREADS Alternatives are DYNAMIC_LINKING - assume that DYNAMIC_LINKING is always present. GUILE_ISELECT - assume that scm_internal_select is always present. READER_EXTENSIONS - assume that it is always present. STACK_DIRECTION - there should be no need to know about the stack direction for ordinary programs. Do not use. USE_THREADS - assume that the thread API is always present. Ok? -- GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3 331E FAF8 226A D5D4 E405 _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://mail.gnu.org/mailman/listinfo/guile-devel