module Ngrams where ngrams :: Int -> [a] -> [[a]] ngrams n xs = ng n (length xs) xs where ng n len [] = [] ng n len lst@(x:xs) | len < n = [] | otherwise = take n lst : ng n (len - 1) xs