[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GH. Again.

From: Marius Vollmer
Subject: Re: GH. Again.
Date: 25 Jun 2001 16:03:14 +0200
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.0.102

Neil Jerram <address@hidden> writes:

> OK, this is in now - please review and amend as you think appropriate.

Nice!  Two things: I think we shouldn't say that the `scm_' interface
is portable, and we should give advice to new users that have to
decide which interface to use, given a 1.6.0 release of Guile.


       Where portability is concerned, the `scm_' interface is now
    already portable in the sense that other projects could provide an
    alternative implementation of the `scm_' header file.  For the
    majority of `scm_' functions, all that is needed is a definition
    of the `SCM' type, and then those functions are automatically
    portable by virtue of the fact that their signatures refer only to
    this `SCM' type.

is not really true I'm afraid.  The way the GC works in Guile is a
very central piece of the API semantics, but it is not reflected in
the C declarations themselves, for example.  Smobs and all the details
surrounding them (like 2-word cells versus 4-word cells) also dig
quite deep into the basic design of libguile.

I think we shouldn't connect the `scm_' interface with portability at
all.  The paragraph can be removed completely, I'd say.

The other thing is that we have the unfortunate situation now that
when someone wants to start a project using Guile and reads the
manual.  He will discover that the GH interface is deprecated, but
there is no adequate replacement yet, in the manual.  What is he to
do?  I think we should say that it is OK to use the GH interface if
someone feels uncomfortable with the `scm_' interface as it stands
today.  We should emphasize that the conversion to the `scm_'
interface will be very straightforward, and can probably be mostly

Could you add this to the Manual?

reply via email to

[Prev in Thread] Current Thread [Next in Thread]