Linked by Thom Holwerda on Fri 3rd May 2013 18:27 UTC
Windows "Microsoft's phone chief hates to call the new Nokia Lumia 521 cheap, but the lower-priced smartphone launching in the United States is the company's boldest move yet to win mass market share from leaders Apple and Samsung. The world's largest software company has so far focused on putting its Windows Phone software into expensive, high-end devices - chiefly from Nokia and HTC. But the new model will go on sale at Walmart later this month at an unsubsidized price under $150, relatively cheap for a new phone running up-to-date software without a long-term contract." Windows Phone is racing to the bottom just as fast as Android - with the difference being that expensive Android devices do not fail to sell.
Thread beginning with comment 560650
To view parent comment, click here.
To read all comments associated with this story, please click here.
Nelson
Member since:
2005-11-29

You're going to have to say exactly why the .NET Framework is a "blantant rip off". The only commonality between the two is that they're two languages which use a VM.

Its important to consider the fact that JVM as it is now, is not the JVM as it was 10 years ago. The same is true of the CLR, but when the CLR was launched it included features which leapfrogged the JVM in fundamental ways.

The way the metadata and bytecode are structured in the CLR are very different from the JVM internally, and if you read some of the papers published around that time, you can see the rationale for the differences. The JVM wasn't even JIT compiled at the time when the CLR came out.

Even today, the CLR and the JVM diverge in important ways. HotSpot supports dynamic recompilation of hot paths in the application and iirc still falls back to the interpeter under a host of scenarios. The CLR supports a straight up JIT compiler, some AOT options with NGEN, and Cloud Compilation using new machine specific IL on Windows Phone.

I think its more fair to say that the CLR was inspired by the JVM and other technologies at the time, but a rip off or a knock off clone? I think that is unfair, given how different they are architecturally.

C# similarly included some concrete improvements, though this is a little closer to Java, likely for familiarity.

Edited 2013-05-06 15:25 UTC

Reply Parent Score: 3

Alfman Member since:
2011-01-28

Neson,

"You're going to have to say exactly why the .NET Framework is a 'blantant rip off'. The only commonality between the two is that they're two languages which use a VM."

I said almost a blatant ripoff. Not just the managed code ideas but the class frameworks as well, coming from a Java background I remember being surprised how much of the class framework corresponded between the two, I suspect this was because MS used it's previous java experts to design the new .net platform. That's not a bad thing mind you, it's just a plausible explanation of how .net was created. I would love to hear the real stories from an insider, since as outsiders, we can only guess.


"The way the metadata and bytecode are structured in the CLR are very different from the JVM internally, and if you read some of the papers published around that time, you can see the rationale for the differences. The JVM wasn't even JIT compiled at the time when the CLR came out."

Maybe I'm missing something, but hotspot came out in 1999 and as far as I knew it was a JIT compiler. .net wasn't introduced until 2002.



"I think its more fair to say that the CLR was inspired by the JVM and other technologies at the time, but a rip off or a knock off clone? I think that is unfair, given how different they are architecturally."

I'm not arguing .net didn't have improvements, but it was often playing catch up (look at generics for example). I really don't care who did what first, and I'm so out of date with java that I couldn't give a meaningful comparison today anyways). All I can say is that I'm definitely happier with .net than I was with java/jvm. If you're more comfortable saying that .net is inspired by java rather than being a java clone, I can accept that too.

Reply Parent Score: 2

Nelson Member since:
2005-11-29


I said almost a blatant ripoff. Not just the managed code ideas but the class frameworks as well, coming from a Java background I remember being surprised how much of the class framework corresponded between the two, I suspect this was because MS used it's previous java experts to design the new .net platform. That's not a bad thing mind you, it's just a plausible explanation of how .net was created.


The .NET BCL is a strange beast, it evolved rather organically as the capabilities of the language evolved. It is plausible that in the beginning a lot of the BCL shared some ideas with Java, but post-Generics and certainly post-LINQ this isn't really true anymore.

But yeah, part of it was the non-Generic nature of .NET (huge miss imo) so we had a lot of ArrayList and IntList and stuff like Java, but part of it also was being familiar where possible.

I see .NET as Microsoft's second try after the fiasco that was J++.


I would love to hear the real stories from an insider, since as outsiders, we can only guess.


Yeah, I wish I knew more at the time to follow along, there was a wealth of interviews with the lead .NET architects during the hype days. Hard to come across that now, let alone the introductory PDC video.


Maybe I'm missing something, but hotspot came out in 1999 and as far as I knew it was a JIT compiler. .net wasn't introduced until 2002.


.NET was introduced in 2000 as a preview at PDC, and Java gained official support for HotSpot in Java 1.3 iirc.

Still, my point overall isn't that Java copied it from .NET or vice versa, but that JIT engines are diverse and two people can use the same ideas but come up with different implementations at different times.

The HotSpot VM is (imo) better than the CLR's JIT in many ways, but more limited in others. Its true for this discussion as a whole I'd guess.


I'm not arguing .net didn't have improvements, but it was often playing catch up (look at generics for example). I really don't care who did what first, and I'm so out of date with java that I couldn't give a meaningful comparison today anyways).


Well Generics in Java and .NET came out around the same time, but were again, different beasts. .NET generics have run time support whereas Java generics are a compile time trick.

C++ templates predates them both, so yeah, I think they all took inspiration from each other as a whole.


All I can say is that I'm definitely happier with .net than I was with java/jvm. If you're more comfortable saying that .net is inspired by java rather than being a java clone, I can accept that too.


I think Sun had some *really* good ideas, but just didn't have the talent or drive to see it out. Microsoft had the vested interest of Windows pushing their agenda forward with .NET.

I don't normally like splitting hairs or playing semantics, its just rip off as the OP did has some pretty obvious negative connotations.

That said, I'm going all-in on C++11 at the moment. Its pretty awesome how far that language has come, and how much faster its being worked on now. Exciting stuff.

Edited 2013-05-07 13:56 UTC

Reply Parent Score: 2