4 ms·
That's pretty much wrong on all accounts. I recommend getting a basic grasp of the topic before trying to defend Go in such an awkward way.
by happy_dino 14y ago
That's pretty much wrong on all accounts.
I recommend getting a basic grasp of the topic before trying to defend Go in such an awkward way.
- vanderZwan 14y agoI have no idea whether you or the person you responded to is right (note that my earlier comment just stated the Go developer stance without any value judgement of my own), but please let's not allow ad hominems to muddy the discussion!
- happy_dino 14y agoCould you please identify the ad hominem? I don't see it.
- vanderZwan 14y agoThere's only two sentences, should be pretty obvious... but ok: the second one is a thinly veiled - to give the benefit of doubt, probably not on purpose - ad hominem. You're putting yourself into an authority position where you write him off as incompetent: "Do your homework! What you say is wrong and awkward!" That's an attack at him personally, and completely unnecessary. Simply providing the facts showing that he's wrong would have sufficed. You haven't done that, btw.
- mseepgood 14y agoNo, it's not wrong. The .NET JIT generates specialized code once for each value type that some code is used with, which is pretty much what C++ does, although not at compile time, but at runtime (JIT compile time).
- quatrevingts 14y agoAnd since it's at runtime, strike out the "much of it redundant, requiring a good linker.." bits. Which leaves it sounding pretty good.
- mseepgood 14y agoEven if one thinks that it's okay. Go is a statically-natively compiled language without an intermediate language and without runtime code generation. I don't think it would fit Go's design very well.
- pjmlp 14y ago.NET is as well, ever heard of NGEN, Bartok compiler, mono -aot or the native compilation when targeting Windows Phone 8?
- mseepgood 14y agohttp://my.safaribooksonline.com/book/programming/microsoft-dotnet/9780764559884/under-the-hood/ngen_and_generic_types http://my.safaribooksonline.com/book/programming/microsoft-d... "With NGen, there can't be anything "lazy" about how generics are instantiated. Instead, NGen must create representations of every generics instance it could encounter. The CLR won't be around to JIT anything. So, after all the discussion of avoiding code bloat and taking advantage of CLR's run-time optimizations, NGen takes all those values and turns them on their collective heads."
- pjmlp 14y agoExcept that is .NET 2.0. Do you also want to compare Go with K&R C compilers for that matter?
- mseepgood 14y agoDo you have any indication that this has changed? If yes, how, without runtime code generation?
- pjmlp 14y agoI don't have information, but by focusing on NGEN for .NET 2.0 you forgot all the other implementations I mentioned. Bartok compiler for Singularity uses another approach of code generation. http://en.wikipedia.org/wiki/Bartok_%28compiler%29 http://en.wikipedia.org/wiki/Bartok_%28compiler%29 http://singularity.codeplex.com/SourceControl/changeset/view/69631 http://singularity.codeplex.com/SourceControl/changeset/view... Windows Phone 8 only runs native code. .NET IL gets compiled down to native code when uploaded to the Windows App Store, by making use of an optimizing IL to native compiler. http://channel9.msdn.com/Shows/Going+Deep/Mani-Ramaswamy-and-Peter-Sollich-Inside-Compiler-in-the-Cloud-and-MDIL http://channel9.msdn.com/Shows/Going+Deep/Mani-Ramaswamy-and... http://channel9.msdn.com/Events/Build/2012/3-005 http://channel9.msdn.com/Events/Build/2012/3-005 Mono also compiles to native code on iOS and other systems as well http://docs.xamarin.com/guides/ios/advanced_topics/compilation http://docs.xamarin.com/guides/ios/advanced_topics/compilati... The IL2CPU compiler used in the Cosmos project, which is still not fully implemented http://www.codeproject.com/Articles/220071/Csharp-Open-Source-Managed-Operating-System-Quick http://www.codeproject.com/Articles/220071/Csharp-Open-Sourc... http://cosmos.codeplex.com/SourceControl/changeset/view/101100#1753855 http://cosmos.codeplex.com/SourceControl/changeset/view/1011... http://cosmos.codeplex.com/SourceControl/changeset/view/101100#1408070 http://cosmos.codeplex.com/SourceControl/changeset/view/1011... Going back to the runtime code generation (JIT), there is also SPUR being used at Microsoft Research http://research.microsoft.com/en-us/projects/spur/ http://research.microsoft.com/en-us/projects/spur/ Don't mix languages with their implementations.