小编Lon*_*nks的帖子

你用过JustCode吗?

有人最近使用 Telerik的JustCode吗?这问题大约在两年前被提出,但我确信这些问题现在必须得到解决.特别是指与ReSharper并排运行.

resharper justcode

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

参考透明度

当在函数式编程中使用术语"引用透明"时,术语"不可观察"的含义是什么?

functional-programming scala referential-transparency

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

从功能列表中删除重复项

是否可以从Haskell中的函数列表中删除重复项(如在nub中)?基本上,是否可以为(Eq(整数 - >整数))添加一个实例

在ghci:

let fs = [(+2), (*2), (^2)]
let cs = concat $ map subsequences $ permutations fs
nub cs

<interactive>:31:1:
No instance for (Eq (Integer -> Integer))
  arising from a use of `nub'
Possible fix:
  add an instance declaration for (Eq (Integer -> Integer))
In the expression: nub cs
In an equation for `it': it = nub cs
Run Code Online (Sandbox Code Playgroud)

提前致谢.

...

此外,根据larsmans的回答,我现在能够做到这一点

> let fs = [AddTwo, Double, Square]
> let css = nub $ concat $ map …
Run Code Online (Sandbox Code Playgroud)

haskell function duplicates

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

将两个回调折叠到一个Observable中

下面的代码片段是功能性的(从某种意义上说它正在工作;-)),但似乎充其量只是蹩脚......

任何人都可以建议一种方法来使这个更容易组合或至少不那么难看?

该代码基于此页面上的示例: 使用RxJS包装现有API

function connect() {
  return rx.Observable.create(function (observer) {
    mongo.connect('mongodb://127.0.1:27017/things', function(err, db) {
      if(err) observer.onError(err);
      observer.onNext(db);
    });
  }).publish().refCount();
}

function getThings(db) {
  return rx.Observable.create(function (observer) {
    db.collection('things').find().toArray(function(err, results) {
      if(err) observer.onError(err);
      observer.onNext(results);
      observer.onCompleted();
    });
    return function () {
      db.close();
    };
  }).publish().refCount();
}


connect().subscribe(
  function (db) {
    getThings(db).subscribe(console.log);
  }, function (err) {
    console.log(err);
  }
);
Run Code Online (Sandbox Code Playgroud)

mongodb rxjs

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

Haskell返回错误的结果

可能重复:
Haskell:表达式[0,0.1 .. 1]的意外输出

在Haskell中,有谁知道以下结果的原因?

Prelude Data.List> map (\x -> x - 0.1) [0.2,0.3..0.9]

[0.1,0.19999999999999998,0.29999999999999993,0.3999999999999999,0.4999999999999999,0.5999999999999998,0.6999999999999996,0.7999999999999995]
Run Code Online (Sandbox Code Playgroud)

代替

[0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8]
Run Code Online (Sandbox Code Playgroud)

double haskell ghci

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