Hacker News new | ask | show | jobs
by pjmlp 1277 days ago
Which modern language, Go stuck in early 1990's language design, or Rust that still doesn't have a comparable Web story at enterprise level?

Kotlin that leeches on Java infrastructure for its existence? And papa Google is yet to fully rewrite Android in Kotlin/Native?

C# is an alternative, provided there is an implementation for the desired OS platform. Meadow is the only presence in Embedded without the capabilities from PTC, Aicas and microEJ.

...

3 comments

Every language new or old will have cons. However, when the perceived con is financial (yes, I realize that OpenJDK isn’t affected, but as evident in the comments many people still don’t know that, and they will never know given all the choices); you’re going to lose a lot of future users.

The part I find interesting is how Java is slowly becoming like COBOL all due to a combination of bad marketing and terrible messaging, and a flawed monetization scheme that was obviously rushed with little thought for the long term.

> flawed monetization scheme

At this point it rather looks more like a "protection tax" than a flawed monetization scheme.

C# seems the obvious choice to me. One can probably compile Java to C# - it might be in the category of regex then fix compiler errors, so economically reasonable to do. Probably similar library coverage for the two ecosystems by now.

That lets one replace the dependency on Oracle, whose reputation is invariant, with Microsoft, who are known to be nice people who won't blow up your world to increase their profits.

Plus the legal team who liked contracts with Oracle can replace them with contracts with Microsoft. The developers who like Java are fairly likely to like C#, what with it being very nearly the same language.

[in case the subtext is somehow missed, I believe this will punt the problem down the road until Microsoft do something similarly expensive to you]

Microsoft is hardly much different, and contrary to Sun/Oracle once upon a time the gatekeeped .NET features behind different support levels on Visual Studio, like contracts, nowadays gone because obviously the adoption wasn't that great.

There are also some tooling features like code coverage, live testing or byte code rewriting tooling that require Visual Studio Enterprise licenses.

IKVM and J# were two ways of running Java code on .NET.

c++ for high level and C for lower level and library building.

bonus : you don't have to learn a new language every decade.

That ship has sailed in 2000…

Plus the winds are changing in security liability.

C++? You have to learn a new language every three years, with an argument for continually as the compilers update out of sync with each other