haskell

    0热度

    1回答

    对this后续问题,假设我有两个t1和t2的某个代数数据类型的术语,并且检查到t1和t2的构造函数是相同的。也就是说,(非正式),T1 = F(S)和t2 = G(T),我已经检查了F = G。现在,我想计算 map f (zip S T) 假设S和T是名单参数。这个天真的代码会要求S中的所有东西都是单一类型的,但一般情况并非如此。 在这一点上,我只是好奇,如果有办法做到这一点。看起来像构造函

    3热度

    2回答

    我刚刚在序言开始了,我希望能执行以下任务: 做谓语A(P,N,L)使得对所有C这是L,P(N,C)第n个元素。 基本上我想执行范围[0..N]的地图。 在Haskell,我最熟悉的语言,这看起来像 f p n = map(p)[0..n] (哈斯克尔不相当有谓语,所以我在这里采取了一些自由) 或pointfree f = (.enumFromTo 0).map 而且看起来我应该能够在Pro

    0热度

    3回答

    我正在用Haskell处理小程序。 也许答案很简单,但我试着得不到结果。 所以我在程序的部分之一是列表 first = [(3,3),(4,6),(7,7),(5,43),(9,9),(32,1),(43,43) ..] ,并根据该列表我要做出新的一个与元素是在()= result = [3,7,9,43, ..] 如果相等你有时间和耐心,我将不胜感激

    1热度

    1回答

    以下进口/语言编译指示需要 {-# language FlexibleContexts, MultiParamTypeClasses, TypeSynonymInstances, FlexibleInstances, CPP #-} import Data.String.Conversions 以下两个功能typechecks细(*种): (++<>) :: ( Convertibl

    2热度

    1回答

    我想在地图内使用'head'函数。 问题是'head'函数只接受非空列表。 我有名单列表: let ll =[["dog", "cat"], ["pig", "cow"], []] 我需要遍历目录列表中两次 let listOne = filter(\x -> if length x > 0) ll map(\x -> head x) listOne 我不知道我是否能一次迭代列表的列表或

    1热度

    1回答

    我有两个either值,例如: Either String Config -- error string or config parsed Either String Env -- error string or environment variables detected 而且我想他们的价值观提取到这个纪录: type App = App { config :: Config, env

    2热度

    2回答

    我有多个数据定义,作为一个简单的例子: data Fruit = Apple String Bool | Cherry String String | Grape String data Vegetable = Carrot String | Onion Bool String | Tomato String String 现在我

    1热度

    2回答

    我正在尝试阅读Haskell中的简单.ini文件,以用作我的应用程序的配置。我不是Haskell的专家,所以我可能会错过简单的东西。 到目前为止,我的简化代码如下所示 {-# LANGUAGE OverloadedStrings #-} import Data.Ini main :: IO() main = do config <- readIniFile "config.

    1热度

    1回答

    我有一个本地创作Haskell的项目,这既产生: 二进制可执行文件, 几个新的哈斯克尔模块,我想发到我的其他访问,哈斯克尔基础,可执行文件。 后: stack build stack install 我发现: 二进制可执行文件(#1,以上)运行在任何目录下就好了。 但是,新的Haskell模块(上面#2)只有在我从我的项目目录中运行时才能找到! (也就是说,对于除#1以外的任何可执行文件)。

    2热度

    3回答

    我有一个系统,其中包含很多不同的功能。我希望用户 能够将数据从shell传递到这些函数中。如果它们传递的数据类型错误,则在执行该功能时应显示错误。 数据需要以一般方式存储为相同类型,以便在传递给exec函数之前可以将其存储在列表中。 data Data = DInt Int | DBool Bool | DChar Char ..... 有没有一种方法可以将数据列表传递到像这样的函数中? ex