- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
周六早上在这里。尝试学习新的 Scala 编译器 dotty。
安装在我的 Mac 上使用
brew install lampepfl/brew/dotty
dotr -version
Starting dotty REPL...
Dotty compiler version 0.20.0-RC1 -- Copyright 2002-2019, LAMP/EPFL
mkdir dotty
Hello.scala
中编写了此代码
import Console._
@main def foo(s: String) : Unit =
println(s"Hello $s")
dotc Hello.scala
.class
和
.tasty
文件
dotr
:load Hello.scala
Exception in thread "main" scala.MatchError: PackageDef(Ident(<empty>),List(ValDef(rs$line$1,Ident(rs$line$1$),
Apply(Select(New(Ident(rs$line$1$)),<init>),List())), TypeDef(rs$line$1$,Template(DefDef(<init>,List(),List(List()),
TypeTree[TypeRef(ThisType(TypeRef(NoPrefix,module class scala)),class Unit)],EmptyTree),List(Apply(Select(New(
TypeTree[TypeRef(ThisType(TypeRef(NoPrefix,module class lang)),class Object)]),<init>),List()), Select(Select(
Ident(_root_),scala),Serializable)),ValDef(_,SingletonTypeTree(Ident(rs$line$1)),EmptyTree),List(Import(Ident(Console),
List(ImportSelector(Ident(_),EmptyTree,EmptyTree))),DefDef(foo,List(),List(List(ValDef(s,Ident(String),EmptyTree))),
Ident(Unit),Apply(Ident(println),List(Apply(Select(Apply(Select(Select(Select(Ident(_root_),scala),StringContext),apply),
List(Typed(SeqLiteral(List(Literal(Constant(hello )), Literal(Constant())),TypeTree[TypeRef(TermRef(
ThisType(TypeRef(NoPrefix,module class scala)),module Predef),type String)]),
TypeTree[AppliedType(TypeRef(ThisType(TypeRef(NoPrefix,module class scala)),class <repeated>),
List(TypeRef(TermRef(ThisType(TypeRef(NoPrefix,module class scala)),module Predef),type String)))]))),s),
List(Typed(SeqLiteral(List(Ident(s)),TypeTree[TypeRef(ThisType(TypeRef(NoPrefix,module class scala)),class Any)]),
TypeTree[AppliedType(TypeRef(ThisType(TypeRef(NoPrefix,module class scala)),class <repeated>),
List(TypeRef(ThisType(TypeRef(NoPrefix,module class scala)),class Any)))]))))))))), TypeDef(foo,Template(DefDef(<init>,List(),List(List()),TypeTree[TypeRef(ThisType(TypeRef(NoPrefix,module class scala)),class Unit)],EmptyTree),List(Apply(Select(New(TypeTree[TypeRef(ThisType(TypeRef(NoPrefix,module class lang)),class Object)]),<init>),List())),ValDef(_,EmptyTree,EmptyTree),List(DefDef(main,List(),List(List(ValDef(args,TypeTree[AppliedType(TypeRef(ThisType(TypeRef(NoPrefix,module class scala)),class Array),List(TypeRef(ThisType(TypeRef(NoPrefix,module class lang)),class String)))],EmptyTree))),TypeTree[TypeRef(ThisType(TypeRef(NoPrefix,module class scala)),class Unit)],Try(Apply(Ident(foo),List(Apply(Apply(TypeApply(Ident(parseArgument),List(TypeTree[TypeRef(TermRef(ThisType(TypeRef(NoPrefix,module class scala)),module Predef),type String)])),List(Ident(args), Literal(Constant(0)))),List(Ident(given_FromString_String))))),List(CaseDef(Bind(error,Typed(Ident(_),TypeTree[TypeRef(ThisType(TypeRef(ThisType(TypeRef(NoPrefix,module class util)),module class CommandLineParser$)),class ParseError)])),EmptyTree,Apply(Ident(showError),List(Ident(error))))),EmptyTree))))))) (of class dotty.tools.dotc.ast.Trees$PackageDef)
at dotty.tools.repl.CollectTopLevelImports.topLevelImports$1(CollectTopLevelImports.scala:23)
at dotty.tools.repl.CollectTopLevelImports.run(CollectTopLevelImports.scala:28)
at dotty.tools.dotc.core.Phases$Phase.runOn$$anonfun$1(Phases.scala:315)
at scala.collection.immutable.List.map(List.scala:219)
at dotty.tools.dotc.core.Phases$Phase.runOn(Phases.scala:316)
at dotty.tools.dotc.Run.runPhases$4$$anonfun$4(Run.scala:162)
at dotty.runtime.function.JProcedure1.apply(JProcedure1.java:15)
at dotty.runtime.function.JProcedure1.apply(JProcedure1.java:10)
at scala.collection.ArrayOps$.foreach$extension(ArrayOps.scala:1323)
at dotty.tools.dotc.Run.runPhases$5(Run.scala:172)
at dotty.tools.dotc.Run.compileUnits$$anonfun$1(Run.scala:180)
at dotty.runtime.function.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
at dotty.tools.dotc.util.Stats$.maybeMonitored(Stats.scala:65)
at dotty.tools.dotc.Run.compileUnits(Run.scala:187)
at dotty.tools.dotc.Run.compileUnits(Run.scala:129)
at dotty.tools.repl.ReplCompiler.runCompilationUnit(ReplCompiler.scala:156)
at dotty.tools.repl.ReplCompiler.compile(ReplCompiler.scala:166)
at dotty.tools.repl.ReplDriver.compile(ReplDriver.scala:227)
at dotty.tools.repl.ReplDriver.interpret(ReplDriver.scala:193)
at dotty.tools.repl.ReplDriver.run$$anonfun$1(ReplDriver.scala:136)
at dotty.tools.repl.ReplDriver.withRedirectedOutput(ReplDriver.scala:148)
at dotty.tools.repl.ReplDriver.run(ReplDriver.scala:137)
at dotty.tools.repl.ReplDriver.interpretCommand(ReplDriver.scala:345)
at dotty.tools.repl.ReplDriver.interpret(ReplDriver.scala:200)
at dotty.tools.repl.ReplDriver.loop$1(ReplDriver.scala:127)
at dotty.tools.repl.ReplDriver.runUntilQuit$$anonfun$1(ReplDriver.scala:130)
at dotty.tools.repl.ReplDriver.withRedirectedOutput(ReplDriver.scala:148)
at dotty.tools.repl.ReplDriver.runUntilQuit(ReplDriver.scala:130)
at dotty.tools.repl.Main$.main(Main.scala:6)
at dotty.tools.repl.Main.main(Main.scala)
最佳答案
您没有指定程序参数
$ dotr foo
Illegal command line: more arguments expected
$ dotr foo World
Hello World
dotr
运行 REPL。在 REPL 中
:load <path>
意思是“解释文件中的行”。怎么样
dotr
应该得到程序参数?
关于scala - 新的 dotty 运行时完全死在我身上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58782434/
我有一些 Scala 代码,它用两个不同版本的类型参数化函数做了一些漂亮的事情。我已经从我的应用程序中简化了很多,但最后我的代码充满了形式 w(f[Int],f[Double]) 的调用。哪里w()是
如果我在同一目录中有两个单独的未编译的 scala 文件: // hello.scala object hello { def world() = println("hello world") }
val schema = df.schema val x = df.flatMap(r => (0 until schema.length).map { idx => ((idx, r.g
环境: Play 2.3.0/Scala 2.11.1/IntelliJ 13.1 我使用 Typesafe Activator 1.2.1 用 Scala 2.11.1 创建一个新项目。项目创建好后
我只是想知道如何使用我自己的类扩展 Scala 控制台和“脚本”运行程序,以便我可以通过使用实际的 Scala 语言与其通信来实际使用我的代码?我应将 jar 放在哪里,以便无需临时配置即可从每个 S
我已经根据 README.md 文件安装了 ensime,但是,我在低级 ensime-server 缓冲区中出现以下错误: 信息: fatal error :scala.tools.nsc.Miss
我正在阅读《Scala 编程》一书。在书中,它说“一个函数文字被编译成一个类,当在运行时实例化时它是一个函数值”。并且它提到“函数值是对象,因此您可以根据需要将它们存储在变量中”。 所以我尝试检查函数
我有 hello world scala native 应用程序,想对此应用程序运行小型 scala 测试我使用通常的测试命令,但它抛出异常: NativeMain.scala object Nati
有few resources在网络上,在编写与代码模式匹配的 Scala 编译器插件方面很有指导意义,但这些对生成代码(构建符号树)没有帮助。我应该从哪里开始弄清楚如何做到这一点? (如果有比手动构建
我是 Scala 的新手。但是,我用 创建了一个中等大小的程序。斯卡拉 2.9.0 .现在我想使用一个仅适用于 的开源库斯卡拉 2.7.7 . 是吗可能 在我的 Scala 2.9.0 程序中使用这个
有没有办法在 Scala 2.11 中使用 scala-pickling? 我在 sonatype 存储库中尝试了唯一的 scala-pickling_2.11 工件,但它似乎不起作用。我收到消息:
这与命令行编译器选项无关。如何以编程方式获取代码内的 Scala 版本? 或者,Eclipse Scala 插件 v2 在哪里存储 scalac 的路径? 最佳答案 这无需访问 scala-compi
我正在阅读《Scala 编程》一书,并在第 6 章中的类 Rational 实现中遇到了一些问题。 这是我的 Rational 类的初始版本(基于本书) class Rational(numerato
我是 Scala 新手,我正在尝试开发一个使用自定义库的小项目。我在库内创建了一个mysql连接池。这是我的库的build.sbt organization := "com.learn" name :
我正在尝试运行一些 Scala 代码,只是暂时打印出“Hello”,但我希望在 SBT 项目中编译 Scala 代码之前运行 Scala 代码。我发现在 build.sbt 中有以下工作。 compi
Here链接到 maven Scala 插件使用。但没有提到它使用的究竟是什么 Scala 版本。我创建了具有以下配置的 Maven Scala 项目: org.scala-tools
我对 Scala 还很陌生,请多多包涵。我有一堆包裹在一个大数组中的 future 。 future 已经完成了查看几 TB 数据的辛勤工作,在我的应用程序结束时,我想总结上述 future 的所有结
我有一个 scala 宏,它依赖于通过包含其位置的静态字符串指定的任意 xml 文件。 def myMacro(path: String) = macro myMacroImpl def myMacr
这是我的功能: def sumOfSquaresOfOdd(in: Seq[Int]): Int = { in.filter(_%2==1).map(_*_).reduce(_+_) } 为什么我
这个问题在这里已经有了答案: Calculating the difference between two Java date instances (45 个答案) 关闭 5 年前。 所以我有一个这
我是一名优秀的程序员,十分优秀!