Stack Handling in C
s = NULL;
if ( s != NULL ) ...
newtok->link = s; s = newtok;
s = cons(newtok,s);
top = s; s = s->link; /* s = rest(s) */