Compilation

C# (.NET / Mono): Compiled to CIL

> csc source1.cs source2.cs /out:program.exe
$ gmcs source1.cs source2.cs -out:program.exe

Vala: compiled to native code via C code as intermediate code

$ valac source1.vala source2.vala -o program

Vala’s standard object system is GObject, compiled Vala libraries are valid C libraries.

Using Packages

Mono: -pkg:

$ gmcs source.cs -pkg:gtk-sharp-2.0 -out:program.exe

Vala: –pkg

$ valac source.vala --pkg gtk+-2.0 -o program