
Hi Ben,
This would definitely help. I could use a docker image of a really old
OS that has old ghc binaries available, to generate the .c for that
old version of GHC (e.g. v 7.0 or something). Then I could use those
files to bootstrap a ghc 7.0 on my machine, and from there every
version of ghc since. It would make a lot of sense for the
"unregistered" sources to be made available as an optional download
alongside the source code, if haskell.org were open to that
possibility.
Best regards,
Sam
On 22 August 2018 at 21:20, Ben Gamari
Indeed, GHC can indeed produce (very slow) C. This is known as unregisterised mode [1]. That being said, I'm not sure that helps you with the task at hand. Afterall, you still would need a haskell compiler to build your unregisterised compiler.
[1] https://ghc.haskell.org/trac/ghc/wiki/Building/Unregisterised
On August 22, 2018 12:12:27 PM EDT, Sam Halliday
wrote: Hi Tom,
I'm not sure it is necessary to go back that far. Vitaly pointed out that any version of GHC could produce the "minimal C" output, which can be ported to another platform that doesn't have a GHC, as the bootstrap. I'm not entirely sure how to generate that output, mind you.
On 22 August 2018 at 17:05,
wrote: (I haven't actually done this, but:) If you want to be able to install GHC without any GHC binary, I think you'd have to start with an ancient version of GHC which wasn't itself written in Haskell, and build successive versions (skipping as many as possible) until you had a GHC which supported all the language features the most-recent version requires.
If you did embark on this, it would be nice if you could report back with a minimal number of steps it takes to get to current GHC!
Tom
El 22 ago 2018, a las 06:01, Sam Halliday
escribió: Hi Ben,
What is the recommended way to build old versions of GHC? The haskell.org binaries for, e.g. 7.8.3, do not work on my machine. If I attempt to recompile ghc 7.8.3 with the haskell.org binary, I get linkage errors.
Actually I'd love to be able to bootstrap a build without any ghc installed... that would solve the problem. I heard about the "phase0" approach from Vitaly Bragilevsky at his Lambdaconf talk this year. But I've been unable to find any documentation about it.
Best regards, Sam
On 22 August 2018 at 12:30, Ben Gamari
wrote: In general we don't support bootstrapping older GHCI with newer GHC. However, you may be able to hack something together by manually tweaking bounds. Cheers,
- Ben
-- Sent from my Android device with K-9 Mail. Please excuse my brevity. ________________________________
Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users
________________________________
Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users
-- Sent from my Android device with K-9 Mail. Please excuse my brevity.