
#include "spec.h"


struct Stack{
	Let lst[100];
	Let n;
};
typedef struct Stack * Stack;

void Push(Stack st, Let val){
	st->lst[st->n++] = val;
}

Let Pop(Stack st){
	if (st->n == 0) return st->lst[0];
	return st->lst[--(st->n)];
}

void stack(Co ck){

	Log("stack");
	
	struct Stack st = {{0}, 0};

	Push(&st, 1);
	Push(&st, 2);
	Push(&st, 3);

	Num(Pop(&st));
	Num(Pop(&st));
	Num(Pop(&st));

	ck->routine = fact;
}
