小编Mar*_*oni的帖子

列表前面的撇号('[Something])在Haskell中意味着什么?

我正在阅读Servant 文档并遇到了这一行:

type UserAPI = "users" :> QueryParam "sortby" SortBy :> Get '[JSON] [User]
Run Code Online (Sandbox Code Playgroud)

什么是'做这一名单?

haskell servant

11
推荐指数
2
解决办法
666
查看次数

我什么时候需要打字注释?

考虑这些功能

{-# LANGUAGE TypeFamilies #-}

tryMe :: Maybe Int -> Int -> Int
tryMe (Just a) b = a
tryMe Nothing b  = b

class Test a where
    type TT a
    doIt :: TT a -> a -> a

instance Test Int where
    type TT Int = Maybe Int
    doIt (Just a) b  = a
    doIt (Nothing) b = b
Run Code Online (Sandbox Code Playgroud)

这有效

main = putStrLn $ show $ tryMe (Just 2) 25
Run Code Online (Sandbox Code Playgroud)

事实并非如此

main = putStrLn $ show $ doIt (Just …
Run Code Online (Sandbox Code Playgroud)

haskell types typeclass type-families

9
推荐指数
2
解决办法
521
查看次数

如何在 Ubuntu 中使用 Nix 安装字体

如果我尝试类似的事情

nix-env --install nixpkgs.fira-code
Run Code Online (Sandbox Code Playgroud)

该软件包将被安装,但该字体将无法在任何地方使用。

如何使用 Nix 安装字体并使其可在 Ubuntu 中使用?

ubuntu fonts nix

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

函数组合中的条件运算

如何根据某些逻辑条件停止或分支合成?

例如.假设我有以下代码:

compose(
  operation4
  operation3,
  operation2,
  operation1
)(myStuff);
Run Code Online (Sandbox Code Playgroud)

甚至是类似的东西

myStuff
 .map(operation1)
 .map(operation2)
 .map(operation3)
 .map(operation4)
Run Code Online (Sandbox Code Playgroud)

如果myStuff满足某些条件,我只希望执行操作3和4.

我该如何实现(特别是在JavaScript中)?

我是否必须创建两个较小的组合并具有单独的if语句,或者是否有办法在组合中包含条件?

Monads可以解决我的问题吗?如果是这样,怎么样?

javascript functional-programming function function-composition

7
推荐指数
2
解决办法
1210
查看次数

使 flex 容器扩展并溢出其容器

我如何使用nowrapflex-wrap 展开一个 flex 父级以适应其内容,即使这意味着溢出任何包裹父级的东西?

基本上,内容有一个最小宽度,我希望 flex 父项不要缩小超过所有 flex 项目所需的空间。

这是一个 JSFiddle https://jsfiddle.net/lazamar/odat477r/

.wrapper {
  background-color: yellowgreen;
  display: block;
  padding: 10px;
  max-width: 180px;
}

.parent {
  display: flex;
  flex-flow: row nowrap;
  background-color: yellow;
}

.child {
  display: block;
  background-color: orange;
  margin: 10px;
  min-width: 50px;
}
Run Code Online (Sandbox Code Playgroud)
<div class="wrapper">
  <div class="parent">
    <div class="child">Content</div>
    <div class="child">Content</div>
    <div class="child">Content</div>
    <div class="child">Content</div>
    <div class="child">Content</div>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

html css flexbox

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

如何解码Elm中标记的联合类型?

如果我有一个标记的联合类型,就像Shape这里一样,我将如何在Elm中为它构建一个JSON解码器?

type alias Rectangle = { width : Int, height : Int }

type alias Circle = { radius: Int }

type Shape 
    = ShapeRectangle Rectangle 
    | ShapeCircle Circle
Run Code Online (Sandbox Code Playgroud)

json decoder elm

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

具有函数式编程的Express.js服务器(纯路由)

我的目标是能够为Express.js服务器编写纯路由.这甚至可能吗?

为了访问数据库和我知道的东西,我可以使用神话般的Futuremonad保持纯净,但路线渲染本身怎么样?

我发现的最大困难之一是路线可能以不同的方式结束,例如:

  • 重定向
  • 模板渲染
  • 错误返回
  • 杰森回归
  • 文件返回

使用Futuremonad,我可以处理错误和成功案例,但之后的成功案例没有更多的粒度.

有没有办法为Express.js编写纯粹且完全可测试的路由?

javascript functional-programming functional-testing node.js express

4
推荐指数
2
解决办法
1527
查看次数

Twitter API 抱怨“Narrowcast id 参数必须是整数”。

我正在使用 Twitter npm 模块,并且在发帖favorites/destroy.jsonfavorites/create.json使用类似内容时

favorites/destroy.json?id=800364979287425024
Run Code Online (Sandbox Code Playgroud)

我明白了{ code: 96, message: 'Narrowcast id params must be integers.' }。有谁知道发生了什么事吗?Twitter API 文档没有任何相关内容。

我尝试发送带引号和不带引号的 ID,但没有成功。

javascript twitter node.js

3
推荐指数
1
解决办法
390
查看次数

Monad变形金刚用Javascript解释?

我很难理解monad变换器,部分原因是大多数示例和解释都使用Haskell.

任何人都可以举一个例子来创建一个变换器来合并Javascript中的Future和Either monad以及如何使用它.

如果你可以使用ramda-fantasy这些monad 的实现,那就更好了.

javascript monads functional-programming futuretask either

2
推荐指数
1
解决办法
1052
查看次数

Haskell:将函数作为参数传递时的刚性类型变量错误

GHC说我的功能过于笼统,不能作为论据传递.

这是一个重现错误的简化版本:

data Action m a = SomeAction (m a)


runAction :: Action m a -> m a
runAction (SomeAction ma) =  ma

-- Errors in here
actionFile :: (Action IO a -> IO a) -> String -> IO ()
actionFile actionFunc fileName = do
    actionFunc $ SomeAction $ readFile fileName
    actionFunc $ SomeAction $ putStrLn fileName


main :: IO ()
main =
    actionFile runAction "Some Name.txt"
Run Code Online (Sandbox Code Playgroud)

这就是错误所说的:

 • Couldn't match type ‘a’ with ‘()’
      ‘a’ is a rigid type …
Run Code Online (Sandbox Code Playgroud)

haskell types hindley-milner

2
推荐指数
1
解决办法
177
查看次数

与 Pandas 和 Seaborn 绘制日期

我有一个 DataFrame,其中每一行都是一个事件,它有一列datetime指定事件日期和时间的值。

我只想绘制每天的事件数量,并能够指定 x 轴的开始和结束日期。我怎样才能做到这一点?

python matplotlib pandas seaborn

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

Java中延迟函数调用而不暂停应用程序

我希望我的应用程序在标签中显示某些内容几秒钟,然后进行更改。但我不希望我的应用程序在这段时间处于休眠状态。它必须具有功能性。

wait()并使sleep()我的应用程序在此期间无法工作。Java中是否有类似javascript的东西setTimeout(),会继续执行代码并在一段时间后执行一行?

java sleep delay settimeout wait

0
推荐指数
1
解决办法
1591
查看次数