unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: ludo@gnu.org (Ludovic Courtès)
To: Eric Bavier <ericbavier@openmailbox.org>
Cc: guix-devel <guix-devel@gnu.org>,
	guix-devel-bounces+ericbavier=openmailbox.org@gnu.org
Subject: Re: Removing compilers that cannot be bootstrapped
Date: Tue, 22 Mar 2016 17:22:22 +0100	[thread overview]
Message-ID: <87k2kutrcx.fsf@gnu.org> (raw)
In-Reply-To: <98e61e40cf3c9fa4c9cf8bac578d5c37@openmailbox.org> (Eric Bavier's message of "Tue, 22 Mar 2016 09:57:28 -0500")

Eric Bavier <ericbavier@openmailbox.org> skribis:

> On 2016-03-21 17:48, ludo@gnu.org wrote:
>> taylanbayirli@gmail.com (Taylan Ulrich "Bayırlı/Kammer") skribis:
>>
>>> A while back Mark raised the idea of hosting one pre-compiled
>>> bootstrap
>>> version of each such compiler, and use that to compile further
>>> versions.
>>>
>>> This way the number of blobs is one per such compiler, instead of one
>>> for every new version of each such compiler.
>>>
>>> It seemed like a good medium-term solution to me.  I'm not sure how it
>>> would be implemented.
>>
>> I like the idea.
>>
>> Often, in their implementation history, compilers are boostrapped from
>> something else initially, and only later to they become self-hosted and
>> unbootstrappable.
>>
>> So in theory, it’d be possible to find, say, an old-enough GHC that
>> only
>> requires a C compiler (?), and use that to build the next version
>> and so
>> on, until we reach the latest version.  I suspect the same applies to
>> many compilers.
>>
>> This is technically possible.  The main difficulty is to find what
>> exact
>> chain of compiler versions will work, and then to make sure that the
>> super-old compilers can build.  The risk, as Andreas suggests, is that
>> maintaining those old versions will require dragging a whole graph of
>> old dependencies, recursively.
>>
>> But really, we won’t know until we’ve actually tried ;-), and it’ll
>> be different for each compiler.
>
> My initial attempt at packaging GHC before our current package went
> this route, ultimately to no avail.  The earliest publicly-available
> GHC source tarball is indeed "just C", but it is machine-generated C
> code much like Chicken Scheme's.

Oh, good to hear that you tried and failed.

It sounds like GHC bootstrapping will be very hard to address.

Ludo’.

  reply	other threads:[~2016-03-22 16:22 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-21 17:54 Removing compilers that cannot be bootstrapped Thompson, David
2016-03-21 19:15 ` Taylan Ulrich Bayırlı/Kammer
2016-03-21 19:22   ` Taylan Ulrich Bayırlı/Kammer
2016-03-21 19:32   ` Andreas Enge
2016-03-21 22:43 ` rain1
2016-03-22 16:23   ` Ludovic Courtès
2016-03-21 22:48 ` Ludovic Courtès
2016-03-22  9:56   ` Jookia
2016-03-22 16:25     ` Ludovic Courtès
2016-03-22 14:57   ` Eric Bavier
2016-03-22 16:22     ` Ludovic Courtès [this message]
2016-03-22 22:29   ` Christopher Allan Webber
2016-03-23 22:12     ` Ludovic Courtès
2016-03-23 22:49       ` Christopher Allan Webber
2016-03-24  3:11         ` Leo Famulari
2016-03-25 23:08           ` Ludovic Courtès
2016-03-26  0:22             ` Leo Famulari
2016-03-26  6:40               ` Chris Marusich
2016-03-26  6:55                 ` Chris Marusich
2016-03-26  9:02                   ` Jookia
2016-03-26 14:05                   ` Alex Vong
2016-03-26  8:12                 ` Ricardo Wurmus
2016-03-26  9:23                   ` Jookia
2016-03-26 14:31                   ` Ludovic Courtès
2016-03-26 17:19                     ` Christopher Allan Webber
2016-03-26  6:51 ` John Darrington

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://guix.gnu.org/

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

  git send-email \
    --in-reply-to=87k2kutrcx.fsf@gnu.org \
    --to=ludo@gnu.org \
    --cc=ericbavier@openmailbox.org \
    --cc=guix-devel-bounces+ericbavier=openmailbox.org@gnu.org \
    --cc=guix-devel@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.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

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).