Slashdot Mirror


Microsoft May Back Off of .NET Languages

An anonymous reader writes "Though Microsoft had initially made a commitment to create versions of dynamic languages that are customized for .NET, recent reports make it clear that the company may be stepping back from this plan. Much early speculation on this change in focus comes from Jim Schementi, previously the program manager in charge of Microsoft's implementation of the Ruby software known as IronRuby. Schementi reports on his blog that the team dedicated to working on IronRuby has decreased to one employee. According to Schementi, his departure from the company came as Microsoft began to display a 'serious lack of commitment' to any .NETized dynamic languages, including IronRuby."

12 of 443 comments (clear)

  1. Getting screwed in both directions by bbtom · · Score: 4, Insightful

    So, Oracle are suing Google and making the JVM a less viable platform.

    And Microsoft are pulling back on resources for IronRuby.

    Looks like it may finally be time for the LLVM to step up to the plate and provide an open source alternative. Here's hoping...

    --
    catch (HumourFailureException e) { e.user.send("You, sir, are a humourless idiot."); }
    1. Re:Getting screwed in both directions by not+already+in+use · · Score: 4, Insightful

      I think the reason for this is that a lot of web programming isn't overly complex and the brevity of a dynamic language is an advantage in these cases because you can't code something up pretty quickly. Anyone writing any sort of really complex web app in a dynamically typed language is just asking for trouble.

      --
      Similes are like metaphors
    2. Re:Getting screwed in both directions by Bill_the_Engineer · · Score: 4, Insightful

      So, Oracle are suing Google and making the JVM a less viable platform.

      What?

      Oracle is suing Google for making a non-compatible VM call Dalvik that uses technology found in the JVM without paying a license. Since Google wasn't using JVM, how does Oracle's actions against Google make JVM less viable?

      Looks like it may finally be time for the LLVM to step up to the plate and provide an open source alternative.

      LLVM is a low level virtual machine used to optimize compiler operations and runtime linking. JVM is a high level virtual machine providing objects, garbage collection, and according to Oracle technology patented by Sun. From LLVM website:

      The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. Despite its name, LLVM has little to do with traditional virtual machines, though it does provide helpful libraries that can be used to build them.

      LLVM is not a drop in replacement for JVM.

      --
      These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
    3. Re:Getting screwed in both directions by Lunix+Nutcase · · Score: 4, Insightful

      It wouldn't be a drop-in replacement but there is no reason that a Java front-end couldn't be created and combined with the LLVM JIT compiler.

    4. Re:Getting screwed in both directions by 19thNervousBreakdown · · Score: 3, Insightful

      Because there aren't a lot of good interfaces for statically-typed language to web development. Believe me, if I didn't have to rewrite half the world to write web apps in C++ with a good Apache interface, I would do it in a heartbeat.

      That said, don't forget that a whole lot of development is done in ASP.NET now. It's changing.

      --
      <xml><I><am><so><damn>Web 2.0</damn></so></am></I></xml>
    5. Re:Getting screwed in both directions by scot4875 · · Score: 5, Insightful

      That's pretty much a wash, as "Controlled by Sun" isn't much better.

      --Jeremy

      --
      Jesus was a liberal
    6. Re:Getting screwed in both directions by mldi · · Score: 4, Insightful

      That's "Controlled by Oracle", which is far worse than "Controlled by Sun", at least for viability.

      --
      If you aren't suspicious of your government's actions, you aren't doing your job as a responsible citizen.
    7. Re:Getting screwed in both directions by Anonymous Coward · · Score: 3, Insightful

      No. Think again. Its the language.

      Unit Tests are there to detect developer errors, not language errors but the more errors the language allows the developer to make, the more Unit Tests you need. GPs conclusion is correct.

  2. Using them? by 0racle · · Score: 4, Insightful

    Was anyone actually using them? We have Python and Perl scripts running on windows and always preferred ActivePython and ActivePerl.

    --
    "I use a Mac because I'm just better than you are."
  3. Harder than you think by cracauer · · Score: 4, Insightful

    The truth of the matter is that it is very hard to support random other languages on VMs written for certain languages.

    All these dynamic languages do one thing or another that puts a hole in your plan. Ruby with it's continuations is right up there but Python with "modify anything fundamental anytime" isn't much better. The native environment has a huge headstart.

    We should all move to LLVM.

  4. Multiple Languages With .Net Always a Pipe Dream by segedunum · · Score: 3, Insightful

    While this is slightly different, creating dynamic language environments on top of .Net, language neutrality in .Net has always been a myth. It's why there is only one language for .Net in C# and how VB.Net has become totally pointless because it's merely a syntactically different but identical .Net language. After attempts at those languages failed, such as those by ActiveState, we then got reasonably API compatible Ruby and Python environments being developed on top of .Net. Unfortunately, people already had API compatible versions of Ruby and Python - the official ones - and as a result no one has seen fit to run anything under a .Net Ruby or Python environment en masse. Environments like JRuby just clouded the landscape still further. All Microsoft really wants to do is try and get a critical mass of developers deploying to their versions of Ruby and Python probably for embrace and extend, and there is no sign that this is happening. They're trying to keep on with PHP because it's still the dominant web scripting language that they need for Azure to look semi-credible, but this is likely to meet a similar fate for the same reasons.

    The one environment that Microsoft should have created on top of .Net they simply didn't do. They should have created a rapid application development environment on top of .Net, free of the strict confines of C# and object oriented development, that aimed to be at least API compatible with classical VB so people merely had to recompile - as they had always been able to do. Alas, all that Microsoft did was force developers to throw lots of lines of existing code down the drain if they wanted to upgrade or either stay on the platforms they were on permanently or convert their applications to web based ones, which many did.

    Microsoft don't appear to have learned a thing after ten years of .Net.

  5. Not really by thasmudyan · · Score: 3, Insightful

    Microsoft management knows full well that the only way to stay on top of their huge bloated codebase and architecture is to continue along the path of managed code. The only thing they're not fond of are dynamic languages, pure and simple. Support for dynamic languages was added to the .NET runtime very late in the game, and begrudgingly at that. Their current development and runtime environments rely on huge amounts of auto-generated boilerplate glue without which the simplest tasks wouldn't be possible.

    The reasons for this are probably largely historical, because there are still a lot of people from the old COM days working at MS. There are fact-based arguments as well: Dynamic languages tend to be more concise but are more difficult to automatically evaluate and optimize, especially considering the way Microsoft is relying on interface contracts and access policies (all of which are either generated by static language code or in turn serve to generate such code). Besides, none of the teams working on those much-needed tools and design-helpers wants to be put out of a job, so of course they have to stay firmly committed to their huge heap of statically generated code.

    A few years ago some Microsoftie told me about a new research OS they were working on, it was completely .NET-based and probably still reflects how MS would like Windows to be if they could start over from scratch today. I believe the project's name was Singularity, I don't know if it still exists. Anyway, the whole point of the OS was its completely static architecture. There was no support for dynamic languages, all executables were statically linked and completely rigid. There was no self-modification allowed for any application and as far as I remember applications couldn't even dynamically load libraries at runtime. So, in a way, they already made clear which road they are going to go down. Dynamic languages aren't in the mix anymore, but managed code will stay around for a long time at Microsoft.