-
在Scala中废弃你的Boilerplate等价物?
所属栏目:[安全] 日期:2020-12-16 热度:93
Haskell有这个很酷的通用遍历,它允许你在集合中的每个节点上调用类似map的东西,无论是自下而上还是自上而下.它在任何地方都被调用,你可以做到像树一样的地方,你的树上每个节点都会调用f. 在Scala for Traversable中编写等效的东西很容易,但Haskell也可以用于[详细]
-
Scala编译器无法推断混合类型以进行模式匹配
所属栏目:[安全] 日期:2020-12-16 热度:158
我有一个关于有限排列集的代数群的用例.因为我想将这个组用于各种不相关的排列类,我想把它作为一个混合特性来做.这是我尝试的摘录 trait Permutation[P : Permutation[P]] { this: P = def +(that: P): P //final override def equals(that: Any) = ... //fi[详细]
-
Scala – 相互排斥的特征
所属栏目:[安全] 日期:2020-12-16 热度:156
有没有办法定义一个常见类型的替代品集合: trait Mutabilitytrait Mutable extends Mutabilitytrait Immutable extends Mutability 并让编译器排除类似的东西: object Hat extends Mutable with Immutable 我相信我可以通过拥有一个共同的,冲突的成员来强[详细]
-
scala – 验证带有可变参数的概率分布总和为1
所属栏目:[安全] 日期:2020-12-16 热度:100
我想知道如何在 Scala中编写一个方法,它接受一个函数f和一个参数列表args,其中每个arg是一个范围.假设我有三个参数(范围(0,2),范围(0,10)和范围(1,5)).然后我想用这三个参数的所有可能性迭代f. var sum = 0.0for (a - arg(0)) { for (b - arg(1)) { for (c -[详细]
-
字符串上迭代器的意外行为
所属栏目:[安全] 日期:2020-12-16 热度:200
任何人都可以解释为什么这些迭代器的行为不同?我通常希望String的行为类似于IndexedSeq [Char].这在任何地方记录? val si: Iterator[Char] = "uvwxyz".iteratorval vi: Iterator[Char] = "uvwxyz".toIndexedSeq.iteratorval sr = for (i - 1 to 3) yield s[详细]
-
scala – Spark:当加入2个大型DF时,大小超过Integer.MAX_VALUE
所属栏目:[安全] 日期:2020-12-16 热度:92
伙计们, 我正在尝试在每行一个单个密钥标识符的spark中加入2个大型数据帧(每个100GB)时遇到此问题. 我在EMR上使用Spark 1.6,这就是我正在做的事情: val df1 = sqlContext.read.json("hdfs:///df1/")val df2 = sqlContext.read.json("hdfs:///df2/")// clean[详细]
-
斯卡拉 – 当失败时,谁的责任是创造Akka演员的孩子?
所属栏目:[安全] 日期:2020-12-16 热度:94
Akka的文档正确引用说: the precise sequence of events during a restart is the following: Suspend the actor (which means that it will not process normal messages until resumed),and recursively suspend all children. 一个误导性的引述说: Resu[详细]
-
找不到scalaz.Applicative类型的证据参数的隐含值
所属栏目:[安全] 日期:2020-12-16 热度:86
我正在尝试减少此代码( scalaz 7.0.x,scala 2.10.x): type Error[+A] = /[String,A]type Result[+A] = OptionT[Error,A] 进入这个: type Result[+A] = OptionT[({ type λ[+α] = String / α })#λ,A] 我得到错误“无法找到scalaz.Applicative [Main.Re[详细]
-
scala – 在没有错误状态的iteratee库中处理异常
所属栏目:[安全] 日期:2020-12-16 热度:168
我正在尝试编写一个枚举器,用于使用 Scalaz 7的iteratee库从java.io.BufferedReader逐行读取文件,该库目前只为java.io.Reader提供(极慢)枚举器. 我遇到的问题与我使用的所有其他iteratee库(例如,Haskell的Play 2.0’s和John Millikin’s enumerator )都有一[详细]
-
scala – (播放2.4)特征中的依赖注入?
所属栏目:[安全] 日期:2020-12-16 热度:192
在游戏2.4中,是否可以在特征中使用依赖注入? 有什么例子吗? 谢谢. 解决方法 我在这里谈论与Guice的运行时DI,因为它是Play使用的默认方法.其他DI方法或框架可能会有所不同. 由于特征不可实例化,因此无法将依赖关系注入特征.特征没有用于定义依赖关系的构造[详细]
-
scala – 获取迭代器的第n个元素
所属栏目:[安全] 日期:2020-12-16 热度:101
我有一个 scala Iterator [A].我怎样才能引用它的第n个元素? 例如: val myIter: Iterator[Seq[String]] = { .... }//get the size of the Iteratorval s = myIter.size//get 3rd element (base 0)val third:Seq[String] = myIter.get(2) ---- Something li[详细]
-
scala – 如何继承通用工厂方法?
所属栏目:[安全] 日期:2020-12-16 热度:105
假设你有一个Person类,并通过扩展例如为它创建一个集合类. ArrayBuffer: class Persons extends ArrayBuffer[Person] {// methods operation on the collection} 现在,使用ArrayBuffer,可以在随播对象上使用apply()方法创建一个集合,例如: ArrayBuffer(1,2[详细]
-
scala – 一系列类型的抽象
所属栏目:[安全] 日期:2020-12-16 热度:92
假设我们有一个类型T [A,B],我们可以表达以下类型约束,让我们称之为HT: 满足HT的每种类型必须是T [P1,P2] :: T [P2,P3] :: T [P3,P4] :: … :: T [PN-1,PN] :: HNil的形式 对于某些类型x = P1 :: P2 :: … :: PN :: HNil. 我试图在类型化的顺序处理管道上找[详细]
-
Scala中的抽象静态方法
所属栏目:[安全] 日期:2020-12-16 热度:112
我已经阅读了这篇相关文章,但没有多少具体答案(语言设计或多或少): Why can’t static methods be abstract in Java 我对Scala来说有点新手,这可能吗(可能还有特质或其他东西)? 我尝试让我的基类扩展一个特征,但是当我真的希望它们需要在伴随对象中实现时,[详细]
-
违反了斯卡拉兹未来monad的左侧身份法
所属栏目:[安全] 日期:2020-12-16 热度:155
假设我为Future定义了Monad类型类的实例: val futureMonad = new Monad[Future] { override def point[A](a: ? A): Future[A] = Future(a) override def bind[A,B](fa: Future[A])(f: A = Future[B]): Future[B] = fa flatMap f} 严格来说,这不是一个单子,[详细]
-
Scala脚本:在Windows上向ScalaClassLoader解释此类强制转换错误
所属栏目:[安全] 日期:2020-12-16 热度:166
请考虑以下 scala脚本: import scala.reflect.internal.util.ScalaClassLoaderobject Test { def main(args: Array[String]) { val classloaderForScalaLibrary = classOf[ScalaClassLoader.URLClassLoader].getClassLoader println(classloaderForScalaLib[详细]
-
scala – Spark:仅在路径存在时读取文件
所属栏目:[安全] 日期:2020-12-16 热度:197
我试图读取 scala中的Path of Paths中出现的文件.下面是示例(伪)代码: val paths = Seq[String] //Seq of pathsval dataframe = spark.read.parquet(paths: _*) 现在,在上面的序列中,存在一些路径而一些路径不存在.有没有办法在读取镶木地板文件时忽略丢失[详细]
-
scala – 在混合它们的同时保留特质个性
所属栏目:[安全] 日期:2020-12-16 热度:104
我想基于 Scala特性创建一个具有一些特殊属性的enity系统. 主要思想是:所有组件都是从共同特征继承的特征: trait Componenttrait ComponentA extends Component 有时,如果是更复杂的层次结构和相互依赖的组件,它可以像这样: trait ComponentN extends Com[详细]
-
scala – 如何混合使用类型和无类型的actor?
所属栏目:[安全] 日期:2020-12-16 热度:55
我如何混合有型和无类型的演员?据我所知,当我像这样创建ActorSystem实例时,我必须指定主actor val system: akka.typed.ActorSystem[Start] = akka.typed.ActorSystem("main",Props(mainBehaviour)) 另一方面,我使用像这样初始化的akka??-http implicit val[详细]
-
Scala的选项以什么方式折叠了一个变形?
所属栏目:[安全] 日期:2020-12-16 热度:54
对 this问题的回答表明,Scala中Option的折叠方法是一种catamoprhism.来自维基百科的 catamophism是“从初始代数到其他代数的独特同态.这个概念已经应用于函数式编程作为折叠”.所以这似乎是公平的,但引导我到 initial algebra作为 F-algebras类别的初始对象.[详细]
-
scala – 用于大数据数据处理的分布式计算
所属栏目:[安全] 日期:2020-12-16 热度:183
我有一个庞大的时间序列数据,我想使用spark的并行处理/分布式计算进行数据处理. 要求是逐行查看数据,以确定下面指定的组在所需的结果部分下,如果没有执行者之间的某种协调,我真的无法获得分配这一点的火花 t- timeseries datetime sample,lat-latitude,long-[详细]
-
user-interface – 如何将持久数据结构“绑定”到Scala中的GUI?
所属栏目:[安全] 日期:2020-12-16 热度:88
每当持久数据结构(PDS)更新时,我都需要GUI控件来更新. 我需要在用户采取某些操作时更新PDS. 因此,例如,SWT树和简单的树数据结构. 有许多手动,丑陋的方法来做到这一点,但在我看来这是一个非常普遍的情况,那里可能会有一个非常干净的方法. 我一直在阅读有关FRP[详细]
-
scala – 在列表中使用.view时出现奇怪的异常
所属栏目:[安全] 日期:2020-12-16 热度:180
我有很多数字.我需要对它们应用一些操作,然后只获取满足某些条件的结果.列表是顺序的,所以一旦我找到不满足条件的数字,我就可以停止查看. 我想避免做太多的计算,所以我在这个例子中继续前进: List(1,2,3,4,5).view.map(2 *).takeWhile(_ 8) 但它给了我一个[详细]
-
scala – 如何测试sbt解析器
所属栏目:[安全] 日期:2020-12-16 热度:82
在我的本地机器上,我有一个常春藤缓存,通过处理多个项目来填充. 在项目A中使用解析器Y加载库X.在项目B中使用相同的库X,解决此库没有问题,因为它位于我的本地缓存中. 当我的一个同事加载项目B时,他得到了库X无法解决的错误.问题:解析器Y丢失了. 如何在不删除[详细]
-
scala – 如何证明莱昂的名单大小?
所属栏目:[安全] 日期:2020-12-16 热度:200
我试图证明列表中的大小(元素数量)是非负的,但莱昂未能证明它 – 它只是超时.莱昂真的没有能力证明这个属性,还是我错误地使用它?我的出发点是我在文章“莱昂验证系统概述”中读到的一个功能. import leon.lang._import leon.annotation._object ListSize {[详细]