繁体   English   中英

如何在Haskell中通过列表理解来重新创建“ take”功能?

[英]How to recreate the 'take' function by list comprehension in Haskell?

下面的代码通过递归在Haskell中重新创建“ take”函数:

take' :: Int->[a]->[a]
take' 0 _=[]
take' _ []= []
take' n (x:xs)=x : take' (n-1) xs

我想使用列表理解来创建'take'函数:

take' n a=[x|x<-a]

使用ParallelListComp扩展,列表理解可以压缩:

{-# LANGUAGE ParallelListComp #-}

take' n a = [x | x <- a | _ <- [1..n]]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM