First implementation of List