1 import M5b._ |
|
2 |
1 |
3 import io.Source |
2 def urbanmain() = { |
4 import scala.util._ |
3 import M5b._ |
5 |
4 |
6 def urban_load_bff(name: String) : String = |
5 import io.Source |
7 Try(Source.fromFile(name)("ISO-8859-1").mkString).getOrElse("") |
6 import scala.util._ |
8 |
7 |
9 import scala.concurrent._ |
8 def urban_load_bff(name: String) : String = |
10 import scala.concurrent.duration._ |
9 Try(Source.fromFile(name)("ISO-8859-1").mkString).getOrElse("") |
11 import ExecutionContext.Implicits.global |
|
12 import scala.language.postfixOps |
|
13 |
10 |
14 lazy val f = Future { |
11 import scala.concurrent._ |
15 assert(optimise(urban_load_bff("benchmark.bf")).length == 181) |
12 import scala.concurrent.duration._ |
16 assert(optimise(urban_load_bff("sierpinski.bf")).length == 110) |
13 import ExecutionContext.Implicits.global |
|
14 import scala.language.postfixOps |
17 |
15 |
18 assert(run3("[-]", Map(0 -> 100)) == Map(0 -> 0)) |
16 lazy val f = Future { |
19 assert(run3("[->+<]", Map(0 -> 10)) == Map(0 -> 0, 1 -> 10)) |
17 assert(optimise(urban_load_bff("benchmark.bf")).length == 181) |
20 assert(run3("[>>+>>+<<<<-]", Map(0 -> 42)) == Map(0 -> 0, 2 -> 42, 4 -> 42)) |
18 assert(optimise(urban_load_bff("sierpinski.bf")).length == 110) |
21 val hw_urban2 = """+++++[->++++++++++<]>--<+++[->>++++++++++ |
19 |
|
20 assert(run3("[-]", Map(0 -> 100)) == Map(0 -> 0)) |
|
21 assert(run3("[->+<]", Map(0 -> 10)) == Map(0 -> 0, 1 -> 10)) |
|
22 assert(run3("[>>+>>+<<<<-]", Map(0 -> 42)) == Map(0 -> 0, 2 -> 42, 4 -> 42)) |
|
23 val hw_urban2 = """+++++[->++++++++++<]>--<+++[->>++++++++++ |
22 <<]>>++<<----------[+>.>.<+<]""" |
24 <<]>>++<<----------[+>.>.<+<]""" |
23 assert(run3(hw_urban2) == Map(0 -> 0, 1 -> 58, 2 -> 32)) |
25 assert(run3(hw_urban2) == Map(0 -> 0, 1 -> 58, 2 -> 32)) |
24 |
26 |
25 val hw_urban3 = """++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---. |
27 val hw_urban3 = """++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---. |
26 +++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.""" |
28 +++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.""" |
27 |
29 |
28 assert(run3(hw_urban3) == Map(0 -> 0, 5 -> 33, 1 -> 0, 6 -> 10, 2 -> 72, 3 -> 100, 4 -> 87)) |
30 assert(run3(hw_urban3) == Map(0 -> 0, 5 -> 33, 1 -> 0, 6 -> 10, 2 -> 72, 3 -> 100, 4 -> 87)) |
29 |
31 |
|
32 } |
|
33 |
|
34 Await.result(f, 32 second) |
30 } |
35 } |
31 |
|
32 Await.result(f, 32 second) |
|
33 |
|