小编Gae*_*ael的帖子

如何制作文档操场(混合html和swift代码)?

有没有人想出一个很好的方法来生成一个类似于GuidedTour.playground的文档,其中混合了html部分和swift代码而无需手动执行?

我们可以探索playground文件的内容,它是一个包,它显示了html/swift文件和一个描述结构的contents.xcplayground xml文件,但能够以用户友好的方式创建一个很好.

swift swift-playground

8
推荐指数
1
解决办法
1677
查看次数

在Haskell中生成一组布尔变量的所有组合

我试图在haskell的名单monads周围弯曲.我试图在给出一个指定布尔变量的字符串列表的情况下生成所有可能命题的列表.

比如说:

mapM_ print $ allPropositions ["a","b"]
Run Code Online (Sandbox Code Playgroud)

会产生以下结果:

[("a",True),("b",True)]
[("a",True),("b",False)]
[("a",False),("b",True)]
[("a",False),("b",False)]
Run Code Online (Sandbox Code Playgroud)

我已经设法使用列表推导和递归使用以下代码

allPropositions :: [String] -> [[(String,Bool)]]
allPropositions [] = [[]]
allPropositions (x:xs) = [(x,True):r | r <- allPropositions xs] ++ [(x,False):r | r <- allPropositions xs]
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种方法来使用类似于以下代码段的符号,但具有可变数量的输入.有办法吗(嵌套monad,...)?

allPropositions' = do
    a <- [True, False]
    b <- [True, False]
    return([("a",a),("b",b)])
Run Code Online (Sandbox Code Playgroud)

monads haskell list-comprehension list

6
推荐指数
1
解决办法
1082
查看次数