I\'m reading through Real World Haskell, and am trying to understand the as-pattern.
From the book (Chapter 4):
suffixes :: [a] -> [[a]] suffixes
xs' would be bound to the string "ello".
xs'
"ello"
xs would be bound to the string "hello".
xs
"hello"
The @ pattern lets you give a name to a variable while also matching its structure and possibly giving name to the components.
@