varsayalım, ben öğelerin büyük liste alıyorum: as <- getLargeList
bs <- mapM fn as
mapM sahiptir: Artık as <- getLargeList
, ben fn :: a -> IO bas üzerine uygulamak çalışıyorum mapM :: Monad m =>
Dili hakkında daha fazla bilgi edinmek için Clojure'da basit bir masaüstü arama motoru yazıyorum. Şimdiye kadar, programımın metin işleme aşamasında performans gerçekten çok kötü. Ben ettik metin işle
nasıl oluşturabilirim: (defn long-seq-vec [n]
(lazy-seq (into
(vector (list n {:somekey (* n 2)}))
(long-seq-vec (+ n 1)))))
(take 3 (long-seq-vec 3))
Bu bana bir yığın veriyor: