add nil?
pass empty list through
more self-hostingness