Skip to content

Warning

This page has not been updated yet. The page does not reflect the transition from PBS to Slurm.

CSharp

C# is available on the cluster.

$ ml av mono

-------------------- /apps/modules/lang ---------------
   Mono/6.12.0.122

Note

Use the ml av mono command to get up-to-date versions of the modules.

Activate C# by loading the Mono module:

$ ml Mono/6.12.0.122

Examples

Hello World

Copy this code to a new file hello.cs:

using System;

class HelloWorld {
  static void Main() {
    Console.WriteLine("Hello world!!!");
  }
}

Compile the program and make Windows executable.

$ mcs -out:hello.exe hello.cs

Now run the program:

$ mono hello.exe
Hello world!!!

Interactive Console

Type:

$ csharp
Mono C# Shell, type "help;" for help

Enter statements below.
csharp>

Now you are in the interactive mode. You can try the following example:

csharp> using System;
csharp> int a = 5;
csharp> double b = 1.5;
csharp> Console.WriteLine("{0}*{1} is equal to {2}", a,b,a*b);
5*1.5 is equal to 7.5
csharp> a == b
false

Show all files modified in last 5 days:

csharp> using System.IO;
csharp> from f in Directory.GetFiles ("mydirectory")
      > let fi = new FileInfo (f)
      > where fi.LastWriteTime > DateTime.Now-TimeSpan.FromDays(5) select f;
{ "mydirectory/mynewfile.cs", "mydirectory/script.sh" }

For more information, see the Mono documentation page.