>> package:clash-prelude

Sequentially compose two actions, discarding any value produced by the first, like sequencing operators (such as the semicolon) in imperative languages. 'as >> bs' can be understood as the do expression
do as
bs
Sequentially compose two actions, passing any value produced by the first as an argument to the second. 'as >>= bs' can be understood as the do expression
do a <- as
bs a
Add an element to the head of a vector, and extract all but the last element.
>>> 1 +>> (3:>4:>5:>Nil)
1 :> 3 :> 4 :> Nil

>>> 1 +>> Nil
Nil
Shift in a bit from the MSB side of a BitVector. Equal to right shifting the BitVector by one and replacing the MSB with the bit to be shifted in.
>>> 1 +>>. 0b1111_0000 :: BitVector 8
0b1111_1000

>>> 0 +>>. 0b1111_0000 :: BitVector 8
0b0111_1000