#pragma indent using Nemerle.Late public class Foo public Run () : void System.Console.WriteLine ("Foo running") public class Bar public Run () : void System.Console.WriteLine ("Bar running") public class Gen[T] public static Run () : void System.Console.WriteLine ("Gen running with T = {0}", typeof(T).FullName) def justRun (x : object) late x.Run () _ = justRun (Foo ()) _ = justRun (Bar ()) late Nemerle.IO.print ("Macros work\n") _ = System.String ('A', 5) Gen[System.Int32].Run () Gen.[System.Int64].Run () /* OPTIONS: -i BEGIN-OUTPUT Foo running Bar running Macros work Gen running with T = System.Int32 Gen running with T = System.Int64 END-OUTPUT */