Microsoft’s Ready to Contribute to OpenJDK
mail.openjdk.java.net
mail.openjdk.java.net
They are adding to the language, which is a mixed blessing, it is helping in some aspects, but also making the syntax even more complicated to a beginer. But the standard libraries are rather stale and would deserve a lot more love.
C# with .Net should compete with Go and rust these days, fight for the mindshare of developers.
I think Mads Torgersen & co. are doing a wonderful job.
We've had a new version of C# with each new (recent at least) release of Visual Studio.
Did you have issues with the quality of new features? I'm really puzzled by your comment.
Besides apart from C# there's also CLR and Jit that could use more love. It is well known that jvm is a better vm than CLR. Most of the CLR speed comes from using references to value types but somewhat as an afterthought and without tools that C++ provides (readonly gives you muh less power that const reference).
Apart from Borrow Checker which is a recent invention, all programming languages features, as far as I am concern has been done previously in one way or another. There is only so many language features you can fit in on a languages like C# which is soon to be 20 years old. It is a sign of maturity. And C# in itself is already very modern compared to Java.
Most of the JVM performance improvement came from many Enterprise customers absolutely pushing the limit to a point where performance of JVM today would be unthinkable 10 - 20 years ago. It is the work a hundreds of millions if not billions over the past two decade. And it is not like Microsoft are not doing research on how to speed it up.
I recall using Visual J++ and its compiler to do "pure Java" development back then and it was a delight. I only moved to Eclipse later because Eclipse had a deeper understanding of the Java language and was able to do fancy things like traverse a call stack from static code analysis. Eclipse was considerably slower in UI and responsiveness, especially on hardware of the time, but that utility made up for it.
The first commercial Java project I worked on we used Visual J++. It was a great environment at the time, there was very little else available if I remember correctly. Sun had something which was horrible.
Eclipse is so bad I think those of us who have been in the Java camp for years/decades/whole career have lost sight of just how much better the MS tools were/are.
I don't even remember feeling as much frustration towards VC++ in the 1990s as I do with Eclipse today.
It's too easy to forget Mac wasn't even an option back then. OSX didn't start to become viable till 2003-2004.
I've officially been doing Java 20 years now... part of me really wants to jump the fence and go work on Windows stuff. I jumped the fence to work on Python 6 years ago. But it was "Python being used for stuff Java is 10x better for" and got tired of it after a year. Python is 10x better than Java for lots of things.. but not for giant enterprise systems IMO.
Like I said, when Eclipse arrived a few years later, it provided a lot of utility that J++ did not, and obviously that utility has value. But I think both of us look back fondly on J++ because we know that had it not been cut short, it could have evolved into something different and possibly even better than what we know as Java today. It seems plausible that in an alternate history where J++ kept evolving, I'd be more satisfied with the state of the art.
Hence the lawsuit.
Microsoft could have added any Microsoft or Windows goodies they wanted -- as long as they didn't try to make it appear that these extensions were part of the Java platform and would run anywhere. There's nothing wrong with Java code that only works on some systems. But not if you're making a version of Java and building those extensions in, especially in a way that tricks developers into using them because they appear to be part of the Java base. Then later the developer discovers their program only runs on Windows.
Anyone know details on how MS uses Java outside of hosted runtimes?
LinkedIn is Java
https://twitter.com/chanezon/status/1192140812718657536
Happy to point you to the presentation if you are interested.
But in short, we use Java at some places like (there's probably more):
- Azure runtimes for end-users (App Service, Functions)
- Azure runtimes for other services (Azure HDInsight aka Big Data)
- LinkedIn backend
- Yammer backend
- Mojang Minecraft
- SQL Server Big Data Connectors (JVM is embedded in the DB)
- Internal Android and Xamarin development
Best, Bruno
Seriously, people that write lines like that... just... why. What email client is even allowing it?
Seems more like an issue with the linked site to me.
The problem here is the mailing list archive viewer, which is displaying it in a non-wrapping context, instead of letting the text wrap appropriate. It's using a <pre> instead of a <pre style="white-space: pre-wrap">, in other words.
But <format=flowed> has been causing problems for years. https://joeclark.org/ffaq.html
How did it go so far? Anyone know more?
If you have further questions, I'd be happy to take them.
Best,
Bruno Borges,
PM for Java at Microsoft
[1] https://hg.openjdk.java.net/jdk/jdk/rev/aebd72de84b0
[2] https://hg.openjdk.java.net/jdk/jdk/rev/c6e474ae266b
[3] https://mail.openjdk.java.net/pipermail/shenandoah-dev/2019-... (still under review)
[4] https://mail.openjdk.java.net/pipermail/hotspot-compiler-dev... (ongoing discussion)
https://en.m.wikipedia.org/wiki/Microsoft_Java_Virtual_Machi...
.NET/Core and JVM have quite diverged I would think
And plenty of people don't use R# either, but I prefer to do so.
I'm not entirely sure why Microsoft don't build something official to run Java code on the CLR/.NET, is it a technical or legal limitation, or simply that there's no business need?
Also re: using Java with .NET, there's also their Java Interop project which is used with Xamarin: https://github.com/xamarin/java.interop
Something more likely. Two things.
Make dot NET a truly first class citizen on other platforms. Including the ecosystem of C# and dot NET libraries. Some of this may be difficult due to the long time that dot NET has been Windows only. There would have to be a clear boundary between APIs and features of the runtime and libraries that are only available on Windows. I think Microsoft is already making moves in this direction. But I don't keep up with it.
Make Java a truly first class citizen on Windows.