In Brent Yorgey's post about monoidal sliding windows he used a queue to represent the fixed-size sliding window.
Due to the fixed size, however, the append stack was reversed to become a new pop stack for the queue at very regular intervals. Intervals of exactly the width of the fixed window.
In effect then, what the queue was computing was prefix and suffix monoidal sums, not over the entire list, but over discrete chunks of the list the one smaller than the size of the fixed window.
For example, say the window size is 5, and our input list is [a0, a1, a2, ..., a21]
.