Skip to content
Snippets Groups Projects
Commit fda6835b authored by Pavel Gajdušek's avatar Pavel Gajdušek
Browse files

added csharp

parent 44d6e063
No related branches found
No related tags found
6 merge requests!368Update prace.md to document the change from qprace to qprod as the default...,!367Update prace.md to document the change from qprace to qprod as the default...,!366Update prace.md to document the change from qprace to qprod as the default...,!323extended-acls-storage-section,!196Master,!166Gajdusek clean
# CSharp
C# is available on the cluster. Activate C# by loading the Mono module:
```console
$ ml Mono
```
## Examples
### Hello World
Copy this code to new file hello.cs:
```csc
using System;
class HelloWorld {
static void Main() {
Console.WriteLine("Hello world!!!");
}
}
```
Compile the program and make *Windows executable*.
```console
$ mcs -out:hello.exe hello.cs
```
This command should not return any error status. You can try to remove one of the curly brackets to get error output:
```console
csc.cs(7,246): error CS1525: Unexpected symbol `end-of-file
Compilation failed: 1 error(s), 0 warnings
```
Now run the program:
```console
$ mono hello.exe
Hello world!!!
```
### Interactive Console
Type:
```console
$ csharp
Mono C# Shell, type "help;" for help
Enter statements below.
csharp>
```
Now you are in interactive mode. You can try following example.
```csc
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:
```csc
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 informations look at [Mono documentation page](http://www.mono-project.com/docs/).
......@@ -138,6 +138,7 @@ pages:
- Trilinos: software/numerical-libraries/trilinos.md
- 'Programming Languages':
- Java: software/java.md
- C#: software/csc.md
- 'Phys':
- LMGC90: salomon/software/phys/LMGC90.md
- 'Tools':
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment