mut-queue[t] record (has private fields)
list-new[t] t mut-queue(values t[])is-empty[t] bool(a t mut-queue)size[t] nat64(a t mut-queue)~=[t] void(a t mut-queue, value t)~~=[t, col] void(a t mut-queue, values col) (col, t) somedequeue[t] t option(a t mut-queue)some[t] bool(a t mut-queue, f bool mut(t))