Haskell learning Priority queue implementation based on left-wing trees Simple priority queue Origami Creating & folding origami sheets. Function to check how many layers of paper there is at a given point after series of folding operations.