Tag: scala

Scala:删除XML空白?

任何人都知道一个很好的Scala库来执行XML的空白删除/压缩? <FOO> <bar> hello world </ bar> <baz> xxx </ baz> </ FOO> 至: <foo> <bar> hello world </ bar> <baz> xxx </ baz> </ foo>

在IntelliJ IDEA中为Scala / sbt项目推荐.gitignore?

我在IntelliJ IDEA 13中创build了一个新的Scala / sbt项目。由于其他团队成员将在这个项目上工作(大概与其他IDE),我应该把什么放在.gitignore ? 似乎有一些项目依赖关系是在.idea文件夹中定义的,所以我不确定是否可以将整个目录放在.gitignore 。

什么是Scala中的函数字面量?

什么是Scala中的函数字面量,我应该什么时候使用它们?

在Scala 2.8.0中迭代Java Map的新方法是什么?

scala.collection.JavaConversions如何取代Stack Overflow问题在Scala中迭代Java集合 (它不工作,因为“jcl”包已经不存在了)和用Scala迭代Map方法 (它不适用于我在一个复杂的testing,我会尝试煮沸,后来在这里发表)。 后者实际上是一个Scala Map问题,但我想我需要知道两个答案才能遍历java.util.Map 。

使用spark-csv编写单个CSV文件

我正在使用https://github.com/databricks/spark-csv ,我想写一个单一的CSV,但不能够,它正在做一个文件夹。 需要一个带path和文件名参数的scala函数,并写入该CSV文件。

Spark:如何从Spark壳运行Spark文件

我正在使用CDH 5.2。 我能够使用spark-shell来运行命令。 我如何运行包含spark命令的文件(file.spark)。 其次,有没有办法在没有sbt的情况下运行/编译CDH 5.2中的scala程序? 提前致谢,

为什么没有选项有折叠方法?

我想知道为什么scala.Option没有像这样定义的方法fold : fold(ifSome: A => B , ifNone: => B) 相当于 map(ifSome).getOrElse(ifNone) 有没有比使用map + getOrElse更好?

Scalamacros和JVM的方法大小限制

我正在使用ScalamacrosreplaceJava程序中的一些代码生成组件,并正在运行到Java虚拟机对于单个方法(64千字节)生成的字节代码大小的限制。 例如,假设我们有一个大型的XML文件,它代表了我们想要在程序中使用的从整数到整数的映射。 我们希望避免在运行时parsing这个文件,所以我们将编写一个macros来编译时进行parsing,并使用文件的内容来创build我们方法的主体: import scala.language.experimental.macros import scala.reflect.macros.Context object BigMethod { // For this simplified example we'll just make some data up. val mapping = List.tabulate(7000)(i => (i, i + 1)) def lookup(i: Int): Int = macro lookup_impl def lookup_impl(c: Context)(i: c.Expr[Int]): c.Expr[Int] = { import c.universe._ val switch = reify(new scala.annotation.switch).tree val cases = mapping […]

Scala / Java中类似于Python的Pickle的简单,无障碍,零样板序列化?

在Scala / Java中有没有一种简单,轻松的序列化方法,类似于Python的pickle? Pickle是一个非常简单的解决scheme,它在空间和时间上相当高效(即不是糟糕的),但不关心跨语言的可访问性,版本控制等,并允许可选的定制。 我所知道的是: Java的内置序列化非常慢( [1] , [2] ),臃肿和脆弱。 当有些东西可以清楚地序列化,但是没有注释的时候(比如很less的Point2D作者标记这些Serializable),也必须将类标记为Serializable。 Scala的BytePickle需要大量的样板文件来处理你想要的任何types,即使这样它也不能和(循环)对象图一起工作 。 jserial : 没有维护, 似乎没有那么快/比默认的Java序列化更小 。 kryo : 不能(取消)序列化没有0-参数的对象 ,这是一个严重的限制。 (你也必须注册你计划序列化的每一个课程,否则你会显着减速/膨胀 ,但即使如此,它仍然比腌菜更快。) protostuff :AFAICT,你必须事先在“schema”中注册你想要序列化的每个类。 Kryo和protostuff是我find的最接近的解决scheme,但是我想知道是否还有其他东西(或者如果有一些方法可以使用,我应该知道)。 请包括使用示例! 理想情况下还包括基准。

build设者与Gradle,优点和缺点?

有人使用Buildr和Gradle,并可以比较这个构build工具。 从第一眼看,他们非常相似。 但是select什么。 同时也很高兴听到有关Scala支持和各种IDE集成(IDEA,NetBeans,Eclipse)的信息。 谢谢。