Go compiler moving from C to Go

pjmlp pjmlp at progtools.org
Fri Dec 20 06:17:54 PST 2013


On Friday, 20 December 2013 at 10:26:09 UTC, Araq wrote:
> On Friday, 20 December 2013 at 07:04:02 UTC, Paulo Pinto wrote:
>> On Friday, 20 December 2013 at 06:50:41 UTC, SomeDude wrote:
>>> On Thursday, 19 December 2013 at 12:27:57 UTC, bearophile 
>>> wrote:
>>>> Russel Winder:
>>>>
>>>>> The whole point of Go is to replace C,
>>>>
>>>> I didn't know this.
>>>>
>>>> Bye,
>>>> bearophile
>>>
>>> Because it's no longer true at all. It was the goal at the 
>>> beginning, but it's no longer, they've said that Go is not a 
>>> system programming language (in the sense that you can 
>>> construct an OS with it).
>>
>> Even though I rather use D than Go, every time I read that, I 
>> am tempted to prove people wrong. If I had the time for it, 
>> that is.
>>
>> Go offers the same mechanisms for systems programming as 
>> Oberon does. If ETHZ was able to create Native Oberon, AOS and 
>> EthOS with Oberon, why cannot one do an OS with Go?
>>
>
> Well I can't see a GC work well in a heavily concurrent kernel.

Well AOS is concurrent, maybe not heavy concurrent but it does 
support parallel tasks.

> BTW the latest incarnation of Oberon includes non-GC'ed 
> pointers. But hey, what do I know...

Go also has them in the unsafe package. You can convert a pointer 
to an uintptr via the unsafe package. That is how you convert 
pointers between Go and C world, for example.

I think the whole discussion about GC based OS is like 
JavaScript. No one in the mainstream considered scripting 
languages fast, until Google released V8. Although Self 
implementation was already quite fast and used for Hotspot.

Now we have Julia already achieving C like speeds in some areas, 
although the implementation is still quite young.

So until a big company does something into this direction, people 
will keep ignoring what has been achieved so far in the academia.

--
Paulo


More information about the Digitalmars-d mailing list