[deleted]
“This change deletes the C implementations of the Go compiler and assembler”
11–20 of 137 posts
Re: “This change deletes the C implementations of the Go compiler and assembler”
#12Once you go Go, you never Go back!
Re: “This change deletes the C implementations of the Go compiler and assembler”
#13So what is the bootstrap process going to be? Other than already have a Go compiler I mean. Or is it have a Go cross compiler? Maybe it matters less, you used to always assume bootstrap from C but that more or less died with C++ based compilers, although you can do a multistage bootstrap from the last gcc before C++ still.
Basically, you start from the last C version, and every version is supposed to be able to compile the next one.
Re: “This change deletes the C implementations of the Go compiler and assembler”
#14[1] http://dtrace.org/blogs/wesolows/2014/12/29/golang-is-trash/
Re: “This change deletes the C implementations of the Go compiler and assembler”
#15Re: “This change deletes the C implementations of the Go compiler and assembler”
#16Re: “This change deletes the C implementations of the Go compiler and assembler”
#17Wow, github doesn't handle big diffs well. Some sort of automatic pagination would really help.
Re: “This change deletes the C implementations of the Go compiler and assembler”
#18Re: “This change deletes the C implementations of the Go compiler and assembler”
#19So what is the bootstrap process going to be? Other than already have a Go compiler I mean. Or is it have a Go cross compiler? Maybe it matters less, you used to always assume bootstrap from C but that more or less died with C++ based compilers, although you can do a multistage bootstrap from the last gcc before C++ still.
It is explained in the design document: https://docs.google.com/document/d/1P3BLR31VA8cvLJLfMibSuTdw... Basically, you start from the last C version, and every version is supposed to be able to compile the next one.
Re: “This change deletes the C implementations of the Go compiler and assembler”
#20Earlier quoted context omitted.
It is explained in the design document: https://docs.google.com/document/d/1P3BLR31VA8cvLJLfMibSuTdw... Basically, you start from the last C version, and every version is supposed to be able to compile the next one.
Ah ok, so there will be a pretty long chain from 1.2 eventually, but hopefully it will be part of the test suite...
A common trick is to keep a highly portable interpreted version of the target language and then use this for bootstrapping, but often you attack new architectures by cross-compilation instead. It all depends.
Also, it is common for self-hosting languages to require themselves to build.