Groovy有一个很好的GUI控制台,我可以在其中输入任何java / groovy代码并运行。 这是与groovy一起发布的。
至于我知道除了REPL之外,Scala没有这样的东西。
我是否可以从命令行下载并安装和运行任何第三方Scala GUI控制台,而不是使用webstart从JNLP文件运行?
一个用例:
假设我有Scala程序:
val lineWidth = 2.5
val axisWidth = 1.5
val white = ConstVec3(1)
val background = white
val axisColor = ConstVec3(0)
drawFunction("Plot") { (dims, pixel) =>
val mid = dims/2.0
val p = pixel - mid
val color: Vec3 = background
color *= {
val shade = clamp(abs(p.x)/axisWidth, 0, 1)
mix(axisColor, background, shade)
}
color *= {
val shade = clamp(abs(p.y)/axisWidth, 0, 1)
mix(axisColor, background, shade)
}
color *= {
val scale = 2/mid.x
val x = p.x*scale
val y = p.y*scale
val f = smoothstep(-1, 1, x)
val shade = clamp(abs(f - y)/(scale*lineWidth), 0, 1)
mix(Vec3(1, 0, 0), Vec3(1), shade)
}
color
}
在Groovy Console(这是一个完整的GUI)中,我可以轻松地复制和粘贴上面的程序。我可以轻松地在GUI中修改程序并快速点击运行按钮并快速查看结果。我甚至可以轻松地复制和粘贴结果并将其发布到其他地方。我可以轻松地从其他地方复制Scala代码行并复制到GUI控制台并点击运行按钮,我也可以将某些jar复制到Groovy控制台的类路径中的位置等等以及更多功能的长列表中。
您可以在REPL中执行此操作,还是可以使用其他工具?
答案 0 :(得分:13)
对于您正在讨论的那种探索性编码,您应该查看Kojo。只需忽略设计用于教孩子如何编程的部分(例如拖动龟窗口和其余部分之间的边界,直到它尽可能小),你会发现你有一个完整的GUI,语法高亮,所有的东西都是让您只需按一下按钮(或两次按键盘键)即可运行代码。或者你可能想用乌龟来做绘画,给出你给出的例子。
您可能也对ScalaConsole或Scalide感兴趣。
答案 1 :(得分:2)
答案 2 :(得分:1)
无论值得什么,如果你不想尝试摇摆的东西,你甚至可以选择Simply Scala。