C# for FRC

Does anyone know if FIRST plans to include C# as a fully supported language? Or does the fact that C++ continues to be updated mean that C# will not become a primary programming language?

Are you aware of a power pc C# compiler/runtime that supports vxworks? I think that would be a prerequisite for FIRST to support C# on the cRIO.

As for the new controller, that’s anyone’s guess.

No.

As for the new controller, that’s anyone’s guess.

The new controller is more what I was interested in. But it would be cool if FRC found a way to support C# on the cRIO as well.

For the sort of programming we do, there’s very little difference between Java and C# language-wise.

Of course I’d prefer Visual Studio as the IDE, but a big part of that comes from actually working on Visual Studio as part of my day job until about 9 months ago.

I’m not positive but doesn’t Mono support vxworks?

Mono does not support VxWorks so you would first need to port it.

LabView is built on the .NET framework, right? Instead of going the vxWorks route, couldn’t you use the LabView cRIO image instead to make porting easier?

Labview is built on .NET but so far as I know the only way to import C# on the cRIO right now is via dlls.

Actually, LabVIEW is not built upon .NET or written in C#. LabVIEW predates C# and even C++.

It was originally written in C. After a few years, the team devised their own object oriented mechanisms for C. Eventually, C++ became mature enough and portions were rewritten in C++, then more and more. Today it is almost entirely written in C++.

I googled and found someone asking about mono for VxWorks, but the post from 2009 indicated there was little interest and little work had been done. NI does use mono quite extensively, and it is rather incomplete and buggy even on the Mac.

Is there a particular reason you are asking about C#?

Greg McKaskle

I find C# to be preferable to C++ because of its readability and syntax, and was curious if any work was being done on it by FIRST.

I think many people would agree with you, but instead of C#, the language choices currently are C++, Java, and LabVIEW. If you know C# well, you shouldn’t find it too difficult learning the other languages, and in fact learning a new language will often reenforce some concepts as well as introduce you to a few others.

If you really want to use C# in FRC, it should be applicable for the dashboard application, but at this time, not for the robot.

Greg McKaskle

Thanks all.