Follow Slashdot blog updates by subscribing to our blog RSS feed


Forgot your password?

Comment Re:spending time on opportunities ? (Score 5, Informative) 747

I work on Mono, because I like it. If you want to learn more about my goals, you can read this old post:

As for CodePlex: it turns out that there are two entities: CodePlex.ORG (owned by the Foundation) and CodePlex.Com (Owned by Microsoft, and has no affiliation with the foundation).

It is beyond unfortunate that the Foundation adopted the name from the hosting site. The logic apparently was "It is already a known brand". In my opinion, moving ahead with this name was a terrible decision as it is incredibly confusing, a point that I have raised with the board of directors.

The CodePlex foundation has no control over the contents of

Comment Re:H.264 licensing (Score 3, Interesting) 335

Not many sites used Silverlight 1.0, because to begin with, barely any sites used Silverlight 1.0.

1.0 did not include the .NET runtime, for most people it was just a javascript plugin that did audio and video. Silverlight only became interesting with 2.0 (this is what we were drawn to when Silverlight 1.1 was announced).

Folks have three options for Silverlight on Linux:
(a) Hope that Microsoft supports it.
(b) Ignore it altogether and hope it vanishes.
(c) Support Moonlight.

We have taken the third step as we believe it will gain adoption and Silverlight will be required to access certain web sites in the future. You might disagree and hope for (a) or (b). In the meantime, we have initiated a collaboration with Microsoft where they provide us with licensed codecs and test suites for all of Silverlight (.NET, GUI, video, audio, streaming) to make sure that the open source version of Silverlight is compatible.

Although we had early access to 2.0 and 3.0, we only use this knowledge for planning. Once they go beta, we have used the public information to add some of those features to Moonlight as we go. For example Moonlight 1.9.5 is actually a mix of Silverlight 2.0 and 3.0, it already supports some four or five features from Silverlight 3.

But Silverlight is a large project, and we are a small team compared to the task at hand, so you are right that we will continue to lag behind Silverlight. This trend in my opinion will change when the fundamental principle of open source kicks in: the need to scratch and itch.

Most Linux users have not had a compelling reason to use Moonlight other than for example Moonshine, but as Silverlight continues to gain adoption and more sites require it, we expect open source contributors to join our effort to tune, improve, bug fix and implement the features on time.

Although you might want to portray having an open source version of Silverlight as a "a losing game", we see this as fundamentally important for Linux to continue to have access to the best technologies.

Comment Re:DirectX on WebApps? (Score 4, Informative) 335

The difference is that Silverlight code is CIL bytecode that runs inside a sandbox.

ActiveX was native code, and you only had two options: to trust or to not trust, but once you installed the code, the executable had as many rights on your system as any other application running with your user ID.

Silverlight (and Moonlight) come with a sandbox that limits what the code that you download can do, for instance, they do not get direct access to any of your files.

Comment Re:No mention of X-platform (Score 2, Informative) 598

Right, "Type Erasure" means that none of the semantic information is preserved in the produced bytecode or metadata.

This has several problems, for example, the following is invalid in Java:

class Stack {
        T [] storage;

        Init ()
              storage = new T [20];

You might want to read "Generic Gotchas" for Java. There is no such problem with the C# version as they are first class citizens:

The implementation is so arcane that it requires documents like this encyclopedic FAQ:

Or even Sun's Ken Arnold stating that "Generics are a mistake":

None of this problems happen in C# and .NET.

Comment Re:MS Is Making Fools Out Of The Open Source World (Score 1) 598

I cant be incompetent and at the same time succeed in derailing Linux application development. Pick one.

Your rage prevents you from making a cogent argument though; I did not "derail" any application development, if anything, I created a project that many people seem to enjoy using.

The fact that you can not tolerate that others do as they please, and that you feel that people need to obey is merely a manifestation of your fascist tendencies.

Comment Re:No mention of X-platform (Score 4, Informative) 598

Both the JVM and the CIL engines can be used to run any programming language you want. They are both turing complete systems, so there is not really anything that will prevent you from targeting any language to run on top of either one of them.

The difference is that the JVM was designed for Java, and Java only.

The CLI originally ran a variation of C++ (they internally called it SMC, or "Smack") and later they created C# and retargeted VB to run on top of it.

But even before this went public, they launched an effort called "Project 7". The goal of this group was to port 7 proprietary languages and 7 research/open source languages to the CIL engine and learn from the exercise what changes were required to make the implementation more efficient. A large number of changes went directly into .NET 1.0, and they allowed the CIL to be a more efficient runtime for running C, C++, Eiffel, Fortran and Cobol than the JVM could. Direct memory manipulation, arbitrary vtable layouts, tail call optimizations all went into .NET 1.0

With .NET 2.0 a new round of languages was tried. The research on ILX and OCaml (mostly using F#) was introduced into the virtual machine, making generic types first-class citizens in the VM, not just entities that were emulated (as they remain to this day in Java). The feedback from Eiffel lead to the introduction of covariance and contravariance in the virtual machine, another feature missing from Java.

The work from Jim Hugunning on IronPython also drove the adoption of new low-level APIs that assisted the runtime in better supporting dynamic languages, all of these features appeared in .NET 2.0 and 3.5.

So certainly, you can target anything into anything else, at the end of the day, everything is running on top of some CPU. The difference is that with .NET you have to jump through less hoops, and the runtime is richer for language developers.

So in Java you can certainly emulate pointers and malloc for building a C compiler. The emulation will tkae the form of "Allocate big array, and emulate pointer operations there". Possible, but not very efficient.

Generics is another area that helped languages like C# get generics that actually make sense, and do not require a PhD to understand. This is an important difference: in Java generics are emulated, in C# they are native to the environment.

That being said, if you like Java, by all means, keep using Java.

Comment Re:Linux Desktop: Not freakin' Swing! (Score 1) 598

Additionally, there are some glorious bindings for Qt called Qyoto now.

The Qyoto bindings power the very pretty Synapse IM client, it is worth taking it out for a spin, because the author has gone the extra mile to make his application good looking and very smooth:

Slashdot Top Deals

"Here at the Phone Company, we serve all kinds of people; from Presidents and Kings to the scum of the earth ..."