main_marking5/bf_test7.scala
changeset 494 253d1ccb65de
parent 463 0315d9983cd0
equal deleted inserted replaced
493:244df77507c2 494:253d1ccb65de
     1 import M5b._
       
     2 
     1 
     3 import io.Source
     2 def urbanmain() = {
     4 import scala.util._
       
     5 
     3 
     6 def urban_load_bff(name: String) : String = 
     4   import M5b._
     7   Try(Source.fromFile(name)("ISO-8859-1").mkString).getOrElse("")
     5 
       
     6   import io.Source
       
     7   import scala.util._
       
     8 
       
     9   def urban_load_bff(name: String) : String = 
       
    10     Try(Source.fromFile(name)("ISO-8859-1").mkString).getOrElse("")
     8 
    11 
     9 
    12 
       
    13   import scala.concurrent._
       
    14   import scala.concurrent.duration._
       
    15   import ExecutionContext.Implicits.global
       
    16   import scala.language.postfixOps 
    10 
    17 
    11 import scala.concurrent._
    18   lazy val f = Future {
    12 import scala.concurrent.duration._
    19     assert(combine(optimise(urban_load_bff("benchmark.bf"))).length == 134)
    13 import ExecutionContext.Implicits.global
    20     assert(combine(optimise(urban_load_bff("sierpinski.bf"))).length == 122)
    14 import scala.language.postfixOps 
       
    15 
    21 
    16 lazy val f = Future {
    22     assert(run4("[-]", Map(0 -> 100)) == Map(0 -> 0))
    17 assert(combine(optimise(urban_load_bff("benchmark.bf"))).length == 134)
    23     assert(run4("[->+<]", Map(0 -> 10)) == Map(0 -> 0, 1 -> 10))
    18 assert(combine(optimise(urban_load_bff("sierpinski.bf"))).length == 122)
    24     assert(run4("[>>+>>+<<<<-]", Map(0 -> 42)) == Map(0 -> 0, 2 -> 42, 4 -> 42))
       
    25     val hw_urban2 = """+++++[->++++++++++<]>--<+++[->>++++++++++
       
    26                   <<]>>++<<----------[+>.>.<+<]"""
       
    27     assert(run4(hw_urban2) == Map(0 -> 0, 1 -> 58, 2 -> 32))
    19 
    28 
    20 assert(run4("[-]", Map(0 -> 100)) == Map(0 -> 0))
    29     val hw_urban3 = """++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.
    21 assert(run4("[->+<]", Map(0 -> 10)) == Map(0 -> 0, 1 -> 10))
       
    22 assert(run4("[>>+>>+<<<<-]", Map(0 -> 42)) == Map(0 -> 0, 2 -> 42, 4 -> 42))
       
    23 val hw_urban2 = """+++++[->++++++++++<]>--<+++[->>++++++++++
       
    24                   <<]>>++<<----------[+>.>.<+<]"""
       
    25 assert(run4(hw_urban2) == Map(0 -> 0, 1 -> 58, 2 -> 32))
       
    26 
       
    27 val hw_urban3 = """++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.
       
    28                    +++++++..+++.>>.<-.<.+++.------.--------.>>+.>++."""
    30                    +++++++..+++.>>.<-.<.+++.------.--------.>>+.>++."""
    29 
    31 
    30 assert(run4(hw_urban3) == Map(0 -> 0, 5 -> 33, 1 -> 0, 6 -> 10, 2 -> 72, 3 -> 100, 4 -> 87))
    32     assert(run4(hw_urban3) == Map(0 -> 0, 5 -> 33, 1 -> 0, 6 -> 10, 2 -> 72, 3 -> 100, 4 -> 87))
       
    33   }
       
    34 
       
    35   Await.result(f, 32 second)
    31 }
    36 }
    32 
       
    33 Await.result(f, 32 second)