unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
From: Alex Shinn <alexshinn@gmail.com>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: guile-devel@gnu.org
Subject: Re: TODO list for Guile R7RS support
Date: Sun, 12 Feb 2012 12:54:50 +0900	[thread overview]
Message-ID: <CAMMPzYN3pbD1_sacr1AMxU+MaUwcCTU2pPhRRhOGRD=x=CQxGw@mail.gmail.com> (raw)
In-Reply-To: <87k43uhegn.fsf@gnu.org>

On Sat, Feb 11, 2012 at 12:53 AM, Ludovic Courtès <ludo@gnu.org> wrote:
>
>> * R7RS feature identifiers: r7rs, exact-closed, ratios, exact-complex,
>>   ieee-float, full-unicode, windows, posix, unix, darwin, linux, bsd,
>>   freebsd, solaris, i386, x86-64, ppc, sparc, jvm, clr, llvm, ilp32,
>>   lp64, ilp64, big-endian, little-endian, guile, guile-2, guile-2.0
>
> I wonder how these are specified.  Does a *-kfreebsd-gnu build have
> ‘freebsd’?  And ‘bsd’?  Do *-gnu* have ‘linux’ defined, even when Linux
> isn’t used?  Does Cygwin have ‘unix’?

First note the list of feature identifiers is one of the
things most likely to be trimmed in the next draft.

There is no "gnu" feature proposed in R7RS, though
Guile can of course define whatever non-portable
features it needs.  I don't see why "gnu" would imply
"linux".

The point about the "unix" feature being vague is well
taken.  I think it's meant to be widely encompassing
and refer to Unix-like systems, including cygwin, with
a guarantee of a Bourne-like shell in /bin/sh and common
Unix programs like cp, rm, ls etc. available, but we'll
be sure to revisit this.

> And above all: are people going to write #ifdef __linux__ish code when
> what they mean is #ifdef __GLIBC__ or even something different?

This particular analogy doesn't apply.  As I see with
the current list of proposed features the only confusion
is in the granularity of the feature to use, where, e.g.

  freebsd < bsd < posix, unix

as opposed to two completely unrelated concepts like
OS and libc.

Regardless, we're likely to add a disclaimer that you
should only resort to cond-expanded code as a last
resort.

-- 
Alex



  parent reply	other threads:[~2012-02-12  3:54 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-09  5:09 TODO list for Guile R7RS support Mark H Weaver
2012-02-10 15:53 ` Ludovic Courtès
2012-02-11 20:41   ` Mark H Weaver
2012-02-11 21:11     ` Ludovic Courtès
2012-02-12  3:54   ` Alex Shinn [this message]
2012-02-12 23:46     ` Ludovic Courtès
2012-02-12 23:57       ` Alex Shinn
2012-02-13  4:03         ` William ML Leslie
2012-02-13 11:50         ` Ludovic Courtès
2012-02-14  2:35           ` Alex Shinn
2012-02-16 21:05             ` Ludovic Courtès
2012-02-22 21:46               ` Andy Wingo
2012-02-22 22:06 ` Andy Wingo
2012-02-23  1:39   ` Alex Shinn
2012-02-26 22:08     ` Ludovic Courtès
2012-02-26 22:48       ` Alex Shinn
2012-02-27 16:00         ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAMMPzYN3pbD1_sacr1AMxU+MaUwcCTU2pPhRRhOGRD=x=CQxGw@mail.gmail.com' \
    --to=alexshinn@gmail.com \
    --cc=guile-devel@gnu.org \
    --cc=ludo@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).