haskell

    11热度

    2回答

    我正在学习Haskell和作为一个练习,我想转换写下面的代码哈斯克尔的read_from功能。来自Peter Norvig的计划翻译。 有没有简单的方法做到这一点? def read(s): "Read a Scheme expression from a string." return read_from(tokenize(s)) parse = read def t

    1热度

    1回答

    我仍然在与Haskell的X11绑定挣扎。现在,我想检测用户关闭窗口的事件。到目前为止,我最好的尝试: import Graphics.X11.Xlib import Graphics.X11.Xlib.Extras import Control.Concurrent (threadDelay) import Data.Bits main :: IO() main = do dpy

    15热度

    3回答

    我最近在Hackage上发现了镜头包,并且一直试图在一个小型测试项目中使用它,可能会变成如果我继续努力,MUD/MUSH服务器就是一个非常遥远的日子。 这里是我的代码说明我面对现在与在 {-# LANGUAGE OverloadedStrings, GeneralizedNewtypeDeriving, TemplateHaskell #-} module World where import

    5热度

    4回答

    我有简单的元组(例如从数据库读取),我不知道元素的数量和内容。例如。 (String, Int, Int)或(String, Float, String, Int)。 我想写一个通用函数,它将采用各种元组并用字符串“NIL”替换所有数据。如果字符串“NIL”已经存在,它应该保持不变。 说回例如: ("something", 3, 4.788)应导致("something", "NIL", "NIL

    2热度

    2回答

    创建自己的数据类型,并尝试执行函子方法如下: data Hieu a = Hieu [a] deriving (Show, Read, Eq) instance Functor Hieu where fmap f (Hieu [x]) = Hieu (f [x]) 这是非常简单的代码,但失败了。你能解释为什么吗? 感谢您的回复。现在我明白,我只适用于一种情况。我试图改写如下,而

    4热度

    2回答

    这就是我所拥有的。它产生一个5秒钟的Au file,带有一个440赫兹的正弦波,受this question启发。 -- file: tone.hs import qualified Data.ByteString.Lazy as BL import qualified Data.ByteString.Lazy.Char8 as BLC import Data.Binary.Put -

    18热度

    1回答

    我尝试以下方法: import System.Exit import System.Posix.Signals import Control.Concurrent (threadDelay) main :: IO() main = do installHandler keyboardSignal (Catch (do exitSuccess)) Nothing thr

    4热度

    1回答

    有没有办法唤醒Haskell中的特定线程?有一个function that suspends the current thread。但清醒的对手似乎并不存在。

    29热度

    3回答

    import Control.Applicative main = print $ fmap (*2) (1,2) 产生(1,4)。我期望它产生(2,4),但相反,该函数仅适用于元组的第二个元素。 更新我基本上已经明白了这一点。我会在一分钟后发布我自己的答案。

    1热度

    1回答

    我试图安装在7 我已经设法让过去的问题不能使用此能够建立网络窗口惊天动地-dev的: cabal install --constraint="network installed" cabal-dev 但是后来我得到这个: >cabal install --constraint="network installed" cabal-dev Resolving dependencies... c