first

first : ((cons Y (listof X)) -> Y)

purpose:
to select the first item of a non-empty list


Reductions:
(first (cons v_1 list-value)) ==> v_1
(first) e==> first: expects one argument
(first v v v ...) e==> first: expects one argument
(first v_1) e==> first: expects argument of type <pair>
   where v_1 is not (cons ...)

Beginning Student Language