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