小编Ana*_*Ana的帖子

如何转换Swift Bool? - >字符串?

鉴于a Bool?,我希望能够做到这一点:

let a = BoolToString(optbool) ?? "<None>"
Run Code Online (Sandbox Code Playgroud)

这要么给我"true","false""<None>".

有内置的BoolToString吗?

casting swift

36
推荐指数
4
解决办法
3万
查看次数

用于启用Servant基于类型的API的所有机制是什么?

我对Servant如何通过打字实现它所带来的魔力感到非常困惑.网站上的例子已经让我很困惑:

type MyAPI = "date" :> Get '[JSON] Date
        :<|> "time" :> Capture "tz" Timezone :> Get '[JSON] Time
Run Code Online (Sandbox Code Playgroud)

我得到"日期","时间" [JSON]和"tz"是类型级文字.它们是具有"成为"类型的值.好的.

我明白:>并且:<|>是类型操作符.好的.

我不知道这些东西在成为类型之后如何被提取回价值.这样做的机制是什么?

我也没有得到这种类型的第一部分如何使框架期望签名的功能IO Date,或者这种类型的第二部分如何使框架能够期望Timezone -> IO Time我的签名功能.这种转变是如何发生的?

那么框架如何调用一个最初不知道类型的函数呢?

我确信这里有许多GHC扩展和独特功能,我不熟悉这种结合使这种魔力发生.

有人可以解释这里涉及哪些功能以及它们如何协同工作?

haskell types data-kinds

31
推荐指数
1
解决办法
1172
查看次数

如何通过命令行获取32位十六进制数字的随机字符串?

我想把一个打印出一串32个十六进制数字的命令放在一起.我有一个有效的Python脚本:

python -c 'import random ; print "".join(map(lambda t: format(t, "02X"), [random.randrange(256) for x in range(16)]))'
Run Code Online (Sandbox Code Playgroud)

这会生成如下输出:

6EF6B30F9E557F948C402C89002C7C8A 
Run Code Online (Sandbox Code Playgroud)

这就是我需要的.

在Mac上,我甚至可以这样做:

uuidgen | tr -d '-'
Run Code Online (Sandbox Code Playgroud)

但是,我没有访问更复杂的脚本语言ruby和python,我不会在Mac上(所以没有uuidgen).我需要坚持使用更多bash'ish工具,如sed,awk,/ dev/random,因为我在一个有限的平台上.有没有办法做到这一点?

random bash

30
推荐指数
5
解决办法
2万
查看次数

如何让Haskell QuickCheck 2.4增加#测试?

好的,正如我通过上一个问题所了解的那样,RWH书籍已经过时了QuickCheck.尽管我读过的所有帖子告诉我使用QuickCheck有多么简单,我找不到任何地方告诉我如何更改为房产运行的测试数量.

RWH说:

handyCheck limit = check defaultConfig {
                     configMaxTest = limit
                   , configEvery   = \_ _ -> ""
                   }
Run Code Online (Sandbox Code Playgroud)

如何使用QuickCheck 2.4做到这一点?更重要的是,我怎么会发现自己?请不要告诉我,我应该能够从API文档中找到它.

haskell quickcheck

26
推荐指数
1
解决办法
2768
查看次数

使用drawInRect时UIImage Aspect Fit?

UIView提供"方面适合"内容模式.但是,我是UIView的子类,并希望使用具有宽高比的drawInRect绘制UIImage.有没有办法让我在不使用UIImageView的情况下访问该功能?

uiimage ios

26
推荐指数
3
解决办法
2万
查看次数

如何在Xcode中构建iOS框架的发布版本?

假设我做了以下事情:

  1. 打开Xcode 7
  2. 档案| 新的| 项目| Cocoa Touch Framework
  3. 使用Swift语言创建"TestFramework"
  4. 使用public func hello(){print("Hello")}创建一个Hello.swift文件.

从这里开始,我可以构建一个框架的调试版本(在Debug-iphoneos文件夹中),但我无法弄清楚如何构建框架的发布版本(在Release-iphoneos中).我以为Archive可能会这样做,但事实并非如此.指针好吗?

xcode frameworks release ios

25
推荐指数
3
解决办法
2万
查看次数

了解Haskell的堆栈程序以及解析器和LTS版本

我想了解如何使用stack和stackage.org.当我第一次安装并使用它时,stackage.org是在LTS-3.8("解析器").从那以后,stackage.org现在有了LTS-3.11.

首先,我想确认一下这意味着什么.Stackage是一个包的存储库,对于特定的LTS版本(例如3.8),包已经被验证可以一起工作.所以LTS-3.8的包装一起工作,LTS-3.11的包装也一起工作.继续 ...

当我跑步时stack new projectname,堆栈告诉我:

Checking against build plan lts-3.8
Selected resolver: lts-3.8
Run Code Online (Sandbox Code Playgroud)

这是否意味着该项目已设置为仅使用在LTS-3.8下验证的软件包和版本?

如果我现在想要启动一个新项目并希望在新项目中使用最新的LTS版本,我如何告诉堆栈默认执行此操作?

如果我想"升级"旧项目以使用新的LTS版本呢?

haskell haskell-stack

23
推荐指数
1
解决办法
4110
查看次数

2011年分布式Haskell最先进的技术?

我读过很多关于分布式Haskell的文章.已经做了很多工作,但似乎是在分配计算领域.我看到远程包似乎实现了Erlang风格的消息传递,但它是0.1和早期阶段.

我想实现一个系统,其中有许多单独的进程提供不同的服务,并由几个主要进程捆绑在一起.这似乎是Erlang的自然选择,但对于Haskell则不然.但我喜欢Haskell的类型安全性.

Haskell最近是否采用过Erlang风格的流程管理?

erlang haskell

22
推荐指数
2
解决办法
2426
查看次数

"派生函数"到底是做什么的?

我想弄清楚deriving FunctorHaskell的确切规则是什么.

我已经看到有关它的消息发布,我已经看到有关它的测试代码,但我似乎无法找到有关规则的官方文档.有人可以澄清和/或指出我到正确的地方吗?

haskell functor

22
推荐指数
2
解决办法
3288
查看次数

21
推荐指数
2
解决办法
474
查看次数