It is often said that c# is more type-safe than c++.
Does the type-safety is provided by the c# to msil conversion or the msil to x86 conversion.
Because if it is the msil to x86 conversion you can ensure the typesafety of c++ code that have been converted to msil.

To write high performance code in java you should write a librairi in C++ and call it from java and when c++ is not enough you write assembler in your c++ code.
This is because the java Jit-compiler dont optimize as much as c++ compiler, also when doinng ahead of time compiling.
you said you where using assembler in c# code.
So my question is, does the bartok ahead of time msil compiler do as much optimization as c++ compiler.

So i understand that you choose c# over c++ because it is a more high-level language giving more simpler code to read.
But you said that writing a device driver in visual basic can cause some problem because of is dynamic feature.
What do you mean .. (Bartok compiler can't convert msil code produced by VisualBasic to x86) or (the type-safety is hard to ensure in dynamic feature)
Is it possible to create a Ruby to msil compiler that keep the dynamic feature of ruby and can be converted to native x86 code like you do for c#.
This way you would have a highly object-oriented dynamic type-safe language