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’.
next prev parent 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).