问题标签 [scala]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2591 浏览

scala - Scala 是否有任何类似 Wicket 的 Web 框架(除了 lift )?

我想使用 Scala 语言开始一个项目。在搜索 Web 框架时,我发现了 Lift。然而,这并不是我想要的:一个完全分离 HTML 和代码的 Web 框架。Lift 确实有一些不错的功能(和学习曲线),但我们需要将 HTML 和代码完全分离。我希望为 Scala 语言找到类似 Wicket、Tapestry 或 Barracuda 的东西。

尽管能够重用 html 模板很好,但让 HTML 模板作为“静态应用程序”模型工作对我们来说更重要。在 Tapestry 中,我们可以将链接放在静态模板中,并使用它来进行静态导航和某种应用程序原型。

那么,您是否知道任何其他易于使用 Scala 语言的 Web 框架?

谢谢,路易斯

0 投票
3 回答
8666 浏览

scala - 将字符串匹配为 Seq[Char] 的模式

在 Scala 中,可以通过将字符串视为 Seq[Char] 来基于字符串的单个字符来制定模式。

A Tour of Scala中提到了此功能的一个示例

这是那里使用的示例代码:

}

我遇到的问题是代码段的第三行:

为什么这种演员阵容是必要的?在所有情况下(包括模式匹配),字符串不应该表现得像 Seq[Char] 吗?但是,如果没有这种转换,代码片段将无法工作。

0 投票
2 回答
3962 浏览

scala - 为什么空字符串与 Seq.empty 不匹配?

编辑:这是很久以前在 Scala 2.8 及更高版本中修复的旧错误

在围绕问题Pattern 将 String 匹配为 Seq[Char] 的一些实验中,我遇到了另一个奇怪的匹配现象。考虑以下将字符串视为字符序列的代码:

正确调用空字符串上的输入会""产生"Empty".

但是,如果我将第一个匹配子句重写为

的匹配""失败并匹配默认子句。

浏览 Scala 库源代码(在理想的世界中你不应该这样做:-))我相信两者Seq()都会Seq.empty导致RandomAccessSeq.empty. 显然,这与上述现象不符,因为只Seq()匹配空字符串。

更新:经过进一步的实验,这个问题可以缩小到以下几点:

这基本上意味着空Seq不会自动等于Seq.empty。因此,当与常量匹配时(而不是使用 starblue 建议的提取器),这种不等式会导致匹配失败。将空解释String为序列时也是如此。

0 投票
3 回答
21856 浏览

unit-testing - 单元测试 Scala

我最近才开始学习 Scala 语言,并希望以TDD方式进行。您能否分享您对 Scala 的单元测试框架的经验以及它们的优缺点。

我正在使用 IntelliJ IDEA 进行 Scala 开发,因此能够在支持 IDE 的情况下运行测试会很好。

0 投票
8 回答
12288 浏览

.net - scala.net 生产准备好了吗?

Scala 似乎也有一个 .NET 实现。我想知道它是否是一个完整的实现,没有松散的结局,或者只是一个展示的东西。

这很重要,因为我们要开发的应用程序除了 Web 上的主要实现外,还应该有 Windows GUI。拥有一种可以在两个实现之间移植核心代码的语言看起来像是一个交易撮合者。

有人从事过 Scala 的 .NET 实现吗?任何反馈?

0 投票
9 回答
18309 浏览

scala - 为什么 Scala 对此没有多少热情?

随着时间的推移,我注意到 Clojure 用户对这种语言只有极大的热情。然而,似乎大多数 Scala 用户甚至都不太关心这种语言。一些人告诉我“这比必须使用 Java 要好。”。我不确定为什么 Clojure 对它有如此多的热情,而 Scala 却几乎没有。它破坏了我必须学习该语言的任何动力。我不太关心使用一种语言“因为它比必须使用 Java 更好。”。你怎么看?我对 Scala 的了解还不够长,无法衡量随着时间的推移流行度增加或减少了多少。你对语言有什么看法?我特别有兴趣听取使用该语言的人的意见。

谢谢。

编辑:显然这篇文章比我预期的更具攻击性。我不是要贬低这两种语言,也不是说 Scala 没有人支持它。我只是说,随着时间的推移,在我看来,像 Clojure 那样对 Scala 充满热情的人越来越少。我不是在做出“不合理的假设”或做出“辩论中的肮脏举动”,我只是在寻求理论。

如果我知道这会引起如此多的争议,我什至不会写这个帖子。对于任何误解,我深表歉意。最后我想指出,我确实喜欢 Scala 和 Clojure。我们说话时我正在学习 Scala。感谢您的帖子,至少有理论的部分。

编辑:9 月 30 日:我确实为我对我赢得的任何敌意表示歉意。这个问题被严重误解了。我喜欢 Scala,并认为它是一种了不起的语言。我是根据自己的观察发言,看来我自己的观察显然是错误的。欢迎您继续投票否决这个问题,但如果我有能力这样做,我会删除它,但我不是。

0 投票
3 回答
1634 浏览

performance - “散列缺点”是什么意思?

何时使用它,为什么?

我的问题来自这句话:“对某些类进行哈希处理并将它们的实例与引用相等性进行比较”

0 投票
4 回答
13319 浏览

performance - How is pattern matching in Scala implemented at the bytecode level?

How is pattern matching in Scala implemented at the bytecode level?

Is it like a series of if (x instanceof Foo) constructs, or something else? What are its performance implications?

For example, given the following code (from Scala By Example pages 46-48), how would the equivalent Java code for the eval method look like?

P.S. I can read Java bytecode, so a bytecode representation would be good enough for me, but probably it would be better for the other readers to know how it would look like as Java code.

P.P.S. Does the book Programming in Scala give an answer to this and similar questions about how Scala is implemented? I have ordered the book, but it has not yet arrived.

0 投票
5 回答
8076 浏览

xml - Scala XML serialization

Seeing the power of Scala, I wonder if an arbitrary object graph could be serialized and deserialized to/from XML using built-in Scala language features and libraries (e.g. without XMLEncoder, XStream or JAXB). Unfortunately, I haven't found such a solution. What could you advise?

0 投票
3 回答
3932 浏览

ajax - Scala提升框架,提交多个值的ajax表单?

我刚刚开始使用lift,我现在正试图将普通表单更改为ajax 表单,但processEntryAdd从未调用过该方法。

知道如何实现我想要做的事情,或者为什么上面的代码不起作用。按下按钮时会提交两个表单字段的值,并且设置了两个局部变量firstNamelastName,但不调用与 SHtml.submit 关联的函数。

谢谢!