haskell

    0热度

    1回答

    我是Haskell的初学者,我试图实现一个函数,该函数返回列表中的内容相乘。这里是我的代码: product' :: Num a => [a] -> a product' [] = 1 product' (_:xs) = foldl (*) 1 xs 在命令行中,我在产品类型: product' [2,3,4] ,我得到的12,而不是24,我知道它与列表的第一个元素做没有被阅读,但我无

    2热度

    2回答

    我想实现一个函数来总结两个列表的内容。这里是我的代码: sum'' :: Num a => [a] -> [a] -> [a] sum'' [] [] = [] sum'' (x:xs) (y:ys) = (x + y) : sum'' xs ys 如果我输入: sum'' [1,2,3] [4,5,6] 我得到[5,7,9],这就是我想要的。我遇到的问题是不同的列表大小。如果输入:

    0热度

    1回答

    我为一副纸牌定义了数据Suit和数据Value。我还定义了类型Card和类型Deck。但我不知道如何使用它们。 data Suit = Club | Diamond | Heart | Spade data Value = Two | Three | Four | Five | Six | Seven | Eight | Nine | Ten | Jack | Queen | Kin

    1热度

    2回答

    我试图在Haskell中实现一个列表的排列。排列的想法是这样的: 基本情况是当列表长度为0和1时,它是列表本身,当大小为2时,排列给出列表本身以及交换元素。 现在,给出一个列表[a,b,c,d]我们排列[b,c,d]并附加一个。并且我们改变我们的列表,使其在第一个b中像[b,a,c,d]和递归地排列[a,c,d]等等。 到目前为止,我在Haskell中完成了以下代码。这完美的作品。但我对这包含的'

    4热度

    1回答

    什么是使仆人处理程序以重定向响应的适当方式?我正在导航REST应用程序中工作,我想响应POST请求,通过重定向到相应的GET资源列表路径创建资源。因此,例如POST/foos应在创建foo后重定向到GET/foos。我无法在文档中找到明确的方法。

    4热度

    1回答

    从Ninety-Nine Haskell Problems: Question 23:提取从列表中随机选择的元件的给定数目。 这是部分解决方案。为了简单起见,这段代码只是从列表中选择一个元素。 import System.Random (randomRIO) randItem :: [a] -> IO a randItem xs = do i <- randomRIO (0,len

    0热度

    2回答

    我想用Haskell Turtle做一些CSV文件处理,但是我在使用选项解析器中的Turtle.FilePath时遇到了问题。 下面是一个exampple: {-# LANGUAGE OverloadedStrings #-} module Main where import Lib import Control.Applicative import qualified Data.By

    -1热度

    1回答

    我想实现一个函数,我有两个列表,第一个是任何类型,第二个是布尔,我希望它只返回第一个列表,如果它是等于true。例如: pickIt [1, 2, 3] [True, False, True] returns [1, 3] 这里是我的代码: pickIt :: [a] -> Bool -> [a] pickIt (x:xs) (y:ys) = (x, y) : pickIt xs ys p

    1热度

    1回答

    我从来没有在#1见过这个具体问题和其他问题没有帮助我(我以前试过开)。 当我尝试打印二叉树这种方式如下: data BinTree a = ET | Branch (BinTree a) a (BinTree a) deriving Show ejC:: BinTree a -> String ejC ET = "" ejC (Branch x y z) = (ejC x) ++ "|-"

    0热度

    1回答

    我在Haskell中编写了一个cgi脚本。 我只限于使用拥抱/ runhugs。 #!/opt/local/bin/runhugs module Main where main = do putStrLn ("content-type: text/plain\n") putStrLn ("Hello, Server!") 到目前为止好。 但现在我想获得服务器的环