Alex Rivera | Logout

Is C# used anywhere besides .NET programming?

Asked 2010-02-01T01:09:20.237
15

It's my understanding that C#, though created by Microsoft, is a programming language that can be used or implemented for things other than .NET programming. For example, I could create a compiler for C# to target native x86 or other processors or even a JVM. Is my understanding incorrect? Does anyone know if C# is used for anything besides .NET?

Edit
Report

2 Answers

6

C# is used for an experimental operating system called 'Singularity' which is written in the managed level from the ground up. An interesting project to watch!

Edit: Thanks Jörg W Mittag for his comment - Helios is actually a modified form of Singularity to support satellite kernels, to quote from the paper I am reading right now 'Helios is an operating system designed to simplify the task of writing, deploying and tuning applications for heterogenous platforms. Helios introduces satellite kernels, which export a single uniform set of OS abstractions across CPUs of disparate architectures and performance characteristics. Satellite Kernels allows developer to write applications against familiar operating system APIs and abstractions.'...interesting...

Hope this helps, Best regards, Tom.

answered 2010-02-01T01:13:27.157
0

There are indeed tools to convert a .NET assembly to a standalone executable or library, so that you don't need your clients to have the .NET framework. This also further protects your code against reverse-engineering to some degree -- you can't use Reflector to see the .NET source on a native binary.

See Remotesoft Salamander .NET Protector, for instance.

But, that isn't strictly C# -> native; Salamander converts the MSIL to native code.

On the other hand, there is at least one academic project on making a C# -> native compiler using LLVM, called LLVM#.

answered 2010-02-01T01:13:56.530

Your Answer