1 public class Pair <T> {
6 public class RList <T> {
7 public class Nil : RList <T> {}
8 public class Zero : RList <T> {
9 public RList <Pair <T> > arg;
12 static int _Length (RList <T> xs) {
14 return RList <Pair <T> >._Length (((Zero)xs).arg);
20 return _Length (this);
27 public static void Main() {
28 int x = (new RList<object>.Nil()).Length;