Saturday, March 01, 2008

Open Source

Sam Ramji is discussing how Open Source Software (OSS)has influenced product development at Microsoft. One of the principles is to be language agnostic.

Programming language agnostic
A given project uses a consistent language, but there are no rules on what languages are in scope or out of scope. Being open to more languages means opportunity to attract more developers – the diversity of PHP/Perl/Python/Java has been a core driver in the success of a number of projects including Linux.
We are not going to get much better at software development until we remove the inefficiency at the core:

The stack thrash C does on context changes. This means we write longer modules that necessary (to cut down on overhead). Which in turn are harder to test. They are also harder to think about.

Once we eliminate the thrash we can design a machine explicitly to execute the language. This gives you another speed boost, because there is no translation from high level code to machine code.

So language agnostic? I'll believe it when I see it.

BTW the language/system I propose is called FORTH. The basis of Open Boot and to some extent JAVA.

You might want to look at SEAforth. They have a .75 GHz processor. They put a bunch of them on a chip. Some pins have their own dedicated processor. You can buy them (in very large quantities) for $2 a chip. Each individual processor on the chip comes in at under 10 mW. When they have nothing to do they automatically sleep.

The logic is unclocked (it can be synchronized with external clocks) so it runs at the native speed of the silicon (as processed).

2 comments:

OregonGuy said...

One of my hopes--looking at unintended consequences--is/was that Linux would force a strategic change at MS.

Write simple code that works.

Mebbe I'm wrong, but a guy with an extra billion bucks could put together an altogether better os than we deal with today. I'm looking forward to retirement so that I can "finally" get that custom built Linux machine.

Oh, well, back to work.

M. Simon said...

It all starts out with "register based design" and gets worse from there.

It is not just new languages and OSs we need. We need "new" silicon designs.