Я пытаюсь начать экспериментировать с Lightweight Modular Staging, , но на их веб-странице не хватает простого простого «тестового» примера, показывающего все от начала до конца, что бы проверить, что все установлено и настроено правильно. В результате я борюсь за это. Я пытаюсь подражать содержимому, которое я нашел в подкаталогах test-src ядра LMS.Начиная с облегченного модульного этапа
До сих пор я сделал следующее:
- клонировал и установил LMS core от GitHub
- установлена SBT tool по запросу
- установили virtualized scala от GitHub
Затем я попытался создание нового проекта SBT, содержащего:
файл конфигурации build.sbt:
name := "lms-tutorial"
scalaOrganization := "org.scala-lang.virtualized"
scalaVersion := "2.10.1"
libraryDependencies += "EPFL" %% "lms" % "0.3-SNAPSHOT"
scalacOptions += "-Yvirtualize"
И простая программа SRC/главная/Скала/hw.scala:
package scala.virtualization.lms
package epfl
import common._
object Hi {
def snippet(x: Rep[Int]) = {
def compute(b: Boolean): Rep[Int] = {
// the if is executed in the first stage
if (b) 1 else x
}
compute(true)+compute(1==1)
}
def main(args: Array[String]) =
println("Hello World!")
}
Но я не могу сделать его компиляции. Я получаю следующее сообщение об ошибке:
[error] ....../src/main/scala/hw.scala:22: not found: type Rep
[error] def compute(b: Boolean): Rep[Int] = {
[error] ^
[error] ....../src/main/scala/hw.scala:21: not found: type Rep
[error] def snippet(x: Rep[Int]) = {
[error] ^
[error] two errors found
[error] (compile:compile) Compilation failed
«Rep» является основной конструкцией СДО, и я считаю, что должна быть импортирована из common._
но почему-то не работает. Что я делаю не так?