Skip to content

dmjio/bounded-queue

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bounded-queue

Implementation of a bounded queue

module Main where

import Data.BQueue
import Control.Monad.State

deq :: MonadState (BQueue a) m => m (Maybe a)
deq = state dequeue

enq :: MonadState (BQueue a) m => a -> m (Maybe a)
enq x = state (enqueue x)

main :: IO ()
main = do
  print =<< do
    flip execStateT (empty @Int 2) $ do
      enq 1
      enq 2
      enq 3
      deq
      enq 4
      enq 5
      deq
      deq
      deq

About

An implementation of a bounded queue

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published