繁体   English   中英

Haskell-将列表解压缩为自定义数据类型

[英]Haskell - unpacking a list into a custom data type

是否可以在没有特定模式匹配的情况下将列表解压缩为数据类型?

例如

data MyType = MyType Int Int Int deriving Show
let l = [1, 2, 3]

func :: [Int] -> MyType

用法将是

λ: func l
λ: Mytype 1 2 3 

我正在努力实现的目标。*

我有一个列表列表,这些列表是我从CSV文件中提取的。 每个列表都是类型变量的列表。 我希望有一种快速的方法可以将那些类型变量传递给类型,而不必模式匹配十个或更多变量。

我个人认为您应该使用模式匹配。

但是,您可以使用此答案中的信息将列表转换为元组。

如何在Haskell中将列表转换为元组?


然后您可以使用此答案中的信息将元组转换为构造函数的参数

n元函数的无毛

它可以工作,并且从理论上讲是干净的,但是要避免一行模式匹配是很多工作。

暂无
暂无

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

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