小编mkU*_*tra的帖子

Haskell支持哪些多态类型?

阅读Wikipedia对多态的定义,我想到一个问题:

Haskell支持哪些多态类型,哪些不支持?

看起来Wikipedia并未包含对某些多态类型的描述,例如Levity Polymorphism,这对我来说是新的,在Haskell中受支持。

我想知道是否有扩展的Haskell多态性列表,并附带示例进行深入研究。

看起来主要是两个:

  • 参数多态性
  • 临时多态性

polymorphism haskell types

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

Scala应用程序中全局常量的最佳实践

通常我创建一个"Scala对象"来保存我所有的全局常量.我被告知最好使用"包对象"来保持常量.我之前从未使用过"包对象",所以我的问题是:

在Scala中保存常量的最佳实践是什么?为什么?

为什么我需要"包对象"?

scala constants object

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

Akka Actor中的timers.startSingleTimer和scheduler.scheduleOnce有什么区别?

我正在设计一个应该安排向自身发送消息的演员。

我注意到至少有两种方法可以做到这一点。

我想了解选择正确选择的区别。

第一种是akka.actor.Timers的一种方法:

def startSingleTimer(key: Any, msg: Any, timeout: FiniteDuration): Unit
Run Code Online (Sandbox Code Playgroud)

第二种是actor上下文系统的调度程序的常见方法:

final def scheduleOnce(
    delay:    FiniteDuration,
    receiver: ActorRef,
    message:  Any)(implicit executor: ExecutionContext,
                            sender: ActorRef = Actor.noSender): Cancellable
Run Code Online (Sandbox Code Playgroud)

题:

  • 在向自己安排消息的情况下,它们之间的主要区别是什么?
  • 将actor上下文传递给scheduleOnce方法是一个好主意吗?

scala scheduling actor akka

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

在 Haskell 中使用 String 而不是 Text 的原因

我听说 Haskell 中使用文本而不是字符串是一个很好的做法。

我试图遵循这个规则,并提出以下问题:

为什么parseRouteNetwork-HTTP-Client 被设计为使用字符串而不是文本?

使用字符串而不是文本的一般建议是什么?

https://www.stackage.org/haddock/lts-14.2/http-client-0.6.4/Network-HTTP-Client.html#v:parseRequest

haskell yesod

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

在Java中使用try catch的最终实体

这是我的代码:

    SomeResult result = null;

    try {
        if(isOK) {
            result = service.getOK();
        }
    } catch (Exception e) {
        //logging
    }

    if(result == null) {
        result = service.getKO();
    }

    return result;
Run Code Online (Sandbox Code Playgroud)

我要让SomeResult结果最终是这样的:

final SomeResult result;
Run Code Online (Sandbox Code Playgroud)

一个出口点可以吗?

java final exception

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

即使客户端断开连接,Grpc Server也会继续处理数据

我有一个服务器,该服务器为给定请求传输数据,以下是执行该功能的方法

@Override
public void getChangeFeed(ChangeFeedRequest request, StreamObserver<ChangeFeedResponse> responseObserver) {
    long queryDate = request.getFromDate();
    long offset = request.getPageNo();
    ChangeFeedResponse changeFeedResponse =  processData(responseObserver, queryDate, offset);

    while(true){
        if(changeFeedResponse!=null && !changeFeedResponse.getFinalize()){
            responseObserver.onNext(changeFeedResponse);
           changeFeedResponse = processData(responseObserver, changeFeedResponse.getToDate(), changeFeedResponse.getPageNo());
        }else{
            break;
        }
    }
    responseObserver.onNext(changeFeedResponse);
    responseObserver.onCompleted();
}
Run Code Online (Sandbox Code Playgroud)

当客户端断开连接时,服务器仍继续处理,这可能在多个客户端获取数据时出现。需要知道如何告诉服务器停止处理

java grpc grpc-java

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

为什么在添加伴随对象时不能使用 case 类的“元组”?

当我将伴随对象添加到我的案例类时,我不能使用元组将参数作为元组传递。

case class Person(name:String, age:Int)
object Person {}

Person.tupled // Not works
Run Code Online (Sandbox Code Playgroud)

错误:

Error:(7, 9) value tupled is not a member of object A$A6.this.Person
Person.tupled
       ^
Run Code Online (Sandbox Code Playgroud)

有人可以解释这种行为吗?谢谢!

scala case-class

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

将 Akka Http 服务的一些路径参数更改为查询参数

我有以下采用路径参数的代码;

def candlesRange: Route = (path("candles" / Segment / Segment / IntNumber / LongNumber / LongNumber) & get) {
  (a1, a2, tf, t1, t2) => complete(apiController.apiGetCandlesRange(a1, a2, tf, t1, t2))
}
Run Code Online (Sandbox Code Playgroud)

但我想将一些参数更改为查询参数。所以 URL 将遵循这样的格式;

/candles/Asset1/Asset2/timeStart=1507198441000&timeEnd=1512382501000&interval=60m
Run Code Online (Sandbox Code Playgroud)

并将它们传递给相同的方法(甚至可能从分钟中删除“m”,因为方法上的参数是一个整数)

如何在 Scala Akka Http 中更改此路由以执行此操作。我能找到的唯一示例使用 Path params

scala akka spray akka-http

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

为什么LocalDate不实现Comparable <LocalDate>?

初步问题:

Scala中,我想使用隐式Ordering[T]#Ops来比较两个LocalDate.

它只是用来>代替"运营商" isAfter.

它应该只是一个导入: import scala.math.Ordering.Implicits._

检查:

看起来它适用LocalTime而不是LocalDate因为LocalTime而不是LocalDate工具Comparable<LocalTime>.

题:

我想知道,

为什么要LocalDate实现Comparable<ChronoLocalDate>而不是 Comparable<LocalDate>

java scala comparable implicit-conversion localdate

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

What does underscore at the end of the function mean in Haskell?

I noticed some function names ending with _ in Haskell (e.g. mapM_, traverse_).

What does it mean?

haskell

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