var a = (new Array[Int]).as_lifo
a.add 1
assert a.peek == 1
a.add 2
assert a.peek == 2
assert a.take == 2
assert a.peek == 1
redef fun peek do
if peek_cached then return peek_cache
var res = seq.rand
peek_cache = res
peek_cached = true
return res
end
lib/core/queue.nit:193,2--199,4