我的意思是命令喜欢:t
:type
检查表达式的类型或任何其他类型的命令。
ammonite 背后的想法真的很吸引我,现在我正试图用它来更熟悉 scala。
作为初学者,这些命令对我很有帮助,但在 amm shell 中是语法错误。
我浏览了 ammonite.io 的文档,但找不到任何相关内容。
是否可以在 ammonite shell/repl 中运行这些命令?
您不能在 Ammonite 中运行 Scala REPL 命令,因为它们是 Scala REPL 命令,而不是 Ammonite 命令。
Ammonite 是一个与 Scala REPL 完全不同的程序,它的命令语言不同。这就像尝试在 JavaScript REPL 中运行 Haskell 代码。
特别是,Ammonite 更喜欢使用 Scala 而不是一种神奇的单独命令语言,因此在 Ammonite 中,对 REPL 的命令是作为正常的 Scala 方法调用发出的。
默认导入两个对象,repl
和interp
,它们允许您与REPL 的 API 和解释器进行交互。例如,对于如何获取对象类型的问题,您可以使用以下ReplAPI.typeOf[T: WeakTypeTag](t: => T): Type
方法:
repl.typeOf("3" + 2)
//=> res: reflect.runtime.package.universe.Type = TypeRef(ThisType(package lang), class String, List())