package forth import "fmt" type Stack struct { stack []int ptr int } func (s *Stack) Push(k int) { s.stack = append(s.stack, k) } func (s *Stack) Pop() (int, error) { if len(s.stack) == 0 { return 0, fmt.Errorf("cannot pop empty stack") } el := s.stack[len(s.stack)-1] s.stack = s.stack[:len(s.stack)-1] return el, nil }