public static T Last <T> (this LispList <T> list) { if (list == null) { return(default(T)); } while (LispList <T> .LengthOf(list) > 1) { list = list.Tail; } return(list.Head); }
public static int Length <T> (this LispList <T> list) { return(LispList <T> .LengthOf(list)); }