在 Scala 使用中文命名编译出错一例

2018-12-10 12:33:07 +08:00
 xuanwu

还未深究是否确定为 Unicode 命名支持问题, 或是最新的 2.12.8 版本已解决?

$ scala
Welcome to Scala 2.12.4 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_45).

scala> for ((行 1, 行 2) <- Array(1,2) zip Array("a", "b"))
     | yield 行 1 + 行 2
<console>:12: error: not found: value 行 1
       for ((行 1, 行 2) <- Array(1,2) zip Array("a", "b"))
             ^
<console>:12: error: not found: value 行 2
       for ((行 1, 行 2) <- Array(1,2) zip Array("a", "b"))
                 ^
<console>:13: error: not found: value 行 1
       yield 行 1 + 行 2
             ^
<console>:13: error: not found: value 行 2
       yield 行 1 + 行 2
                  ^

scala> for ((l1, l2) <- Array(1,2) zip Array("a", "b"))
     | yield l1 + l2
res1: Array[String] = Array(1a, 2b)

细节见疑似 bug_中文代码示例之 Programming in Scala 笔记第九十章

1326 次点击
所在节点    全球工单系统
2 条回复
xuanwu
2018-12-10 21:43:05 +08:00
刚测试在 2.12.8 中有同样问题
xuanwu
2018-12-11 15:12:11 +08:00
在 scala 社区请教后, 基本确认不是 bug: https://zhuanlan.zhihu.com/p/52114604

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/516079

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX