unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
From: Neil Jerram <neil@ossau.uklinux.net>
To: Ken Raeburn <raeburn@raeburn.org>
Cc: Guile User List <guile-user@gnu.org>,
	Guile Development <guile-devel@gnu.org>
Subject: Re: Reconsideration of MinGW work
Date: Tue, 23 Mar 2010 00:04:05 +0000	[thread overview]
Message-ID: <87ljdjlx8q.fsf@ossau.uklinux.net> (raw)
In-Reply-To: <11640D11-A8D6-4C58-86FA-EF79F4D60770@raeburn.org> (Ken Raeburn's message of "Sun, 21 Mar 2010 21:28:18 -0400")

Ken Raeburn <raeburn@raeburn.org> writes:

> Yes... you then also need to decide if Guile is exposing GNU/POSIX
> functionality, whatever the native OS functionality is, or some
> abstraction...

Ideally, yes, I think.  In other words, I think it's preferable if Guile
provides the same function to applications on all platforms.  (Emacs
shows how fantastically useful this is.)

> Having just bought a Lemote Yeelong notebook at LibrePlanet [...]

Aside: I was wondering about buying one of those too, but haven't yet
because of performance concerns.  Can it compile Guile successfully, and
if so how long does it take?

> You *are* reporting these bugs, aren't you? :-)

Err... not yet.  So thanks for the reminder.  But I just checked, and
their (i.e. Wine's) bugzilla requires creating an account, so I'm not
sure I'll bother.  (Is that really irresponsible of me?)

> I think cross-compilation and cross-testing is a good thing to be able
> to do.  Obviously cross-testing requires some additional setup -- as a
> trivial example, the test suite code isn't going to know the name or
> IP address of your Windows or Yeelong machine.  I know it's hard to
> set up, though, and especially hard to maintain if few people actually
> use it.  Perhaps having build farms available with multiple platform
> types can help there.

I agree that this is useful, but it is, as you say, difficult to set up.
Personally, to the extent that I continue working on this, I think I'm
happy to limit myself to what can be achieved with emulation (i.e. with
Wine) on a single Linux box.  At least so far as regular builds are
concerned; of course I'd also expect occasionally to copy the built DLLs
over to Windows and try them there.

> One nagging concern I've got about my Guile-Emacs project is the
> seemingly narrow focus of active Guile developers as far as platforms
> are concerned.  I'm one of, what, two or three people testing the
> development versions on Mac OS X now and then, and most of the rest of
> the work is on x86 or x86-64 GNU/Linux systems, it seems?

Yes, but this isn't intentional, just a matter of limited resources.

On the other hand, in the Windows case, it seems there is independent
effort being put in to the problem downstream.  I wonder why that's
downstream - perhaps because we're not good enough at accepting patches
when they're offered?

On the MacOS side I haven't been closely involved recently, but I think
- for all platforms other than the really mainstream ones that you've
mentioned above - we need people who are authoritative about what the
solution for a given problem is.  If I see a patch for MacOS that seems
to be done at the right place in the build, and obviously doesn't
inappropriately impact other platforms, and the submitter is
authoritative about it being the right solution for MacOS, it's easy to
say "OK, I believe you, and there's no risk, so let's commit it".  But
in the conversations that I remember there hasn't been that
authoritative tone; it's more like I've needed to work out half of the
solution myself, which I'm not in a position to do.  So then things get
left sitting, etc.  And similarly for other less mainstream platforms.

> For a random Scheme implementation, it's okay to pick the set of
> platforms you want to support, and drop whatever's inconvenient.

Which is absolutely not my intention...

>  But if you want to be the official extension language for the GNU
> project, used by (theoretically) lots of GNU packages, you've got to
> support all the platforms the developers of those platforms want to
> support, if you possibly can.

I agree.

>  I think that includes both Cygwin and MinGW,

This is a key point.  My previous email hinted that Cygwin support might
be enough, and several people have commented that it isn't.  So I'm
happy now that that hint was wrong.  For me, then, the questions are
whether we need any more Cygwin/MinGW support for 1.8.x than what
already exists, and how, structurally speaking, we do Cygwin/MinGW
support for 1.9/2.0 and future releases.

Having said that, I don't feel I understand technically why a MinGW
version of Guile, including all necessary emulation code, would run
faster or be less bloated than a Cygwin Guile.  Can someone explain
that?

> and probably not just supporting whatever subset can be mapped into
> POSIX functions via Gnulib.

I don't think I understand your point here.  Gnulib isn't a fixed point.
If we can add emulation code into Guile, can't we just as easily add it
into Gnulib?

Regards,
       Neil




  parent reply	other threads:[~2010-03-23  0:04 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-21 20:51 Reconsideration of MinGW work Neil Jerram
2010-03-21 21:36 ` Grant Rettke
2010-03-22  1:28 ` Ken Raeburn
2010-03-22 20:10   ` Andy Wingo
2010-03-22 23:38   ` Greg Troxel
2010-03-23  0:04   ` Neil Jerram [this message]
2010-03-23  6:59     ` Ken Raeburn
2010-03-23  8:50       ` Andy Wingo
2010-03-28 22:32     ` guile on lemote (was Re: Reconsideration of MinGW work) Ken Raeburn
2010-03-29 21:37       ` guile on lemote Neil Jerram
2010-03-22  8:10 ` Reconsideration of MinGW work Peter Brett
2010-03-22 20:00   ` Andy Wingo
2010-03-22 20:05     ` Linas Vepstas
2010-03-23  0:20       ` Neil Jerram
2010-03-23  0:13   ` Neil Jerram
2010-03-28 22:26 ` Ludovic Courtès
2010-03-29 20:34   ` Neil Jerram
  -- strict thread matches above, loose matches on Subject: below --
2010-03-21 22:45 carlo.bramix
2010-03-23  0:35 ` Reconsideration " Neil Jerram

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=87ljdjlx8q.fsf@ossau.uklinux.net \
    --to=neil@ossau.uklinux.net \
    --cc=guile-devel@gnu.org \
    --cc=guile-user@gnu.org \
    --cc=raeburn@raeburn.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).