main_marking5/bf_test4.scala
changeset 494 253d1ccb65de
parent 463 0315d9983cd0
equal deleted inserted replaced
493:244df77507c2 494:253d1ccb65de
     1 import M5a._
     1 
       
     2 def urbanmain() = {
       
     3 
       
     4   import M5a._
     2 
     5 
     3 
     6 
     4 import scala.concurrent._
     7   import scala.concurrent._
     5 import scala.concurrent.duration._
     8   import scala.concurrent.duration._
     6 import ExecutionContext.Implicits.global
     9   import ExecutionContext.Implicits.global
     7 import scala.language.postfixOps 
    10   import scala.language.postfixOps 
     8 
    11 
     9 lazy val f = Future {
    12   lazy val f = Future {
    10 
    13 
    11 assert(run("[-]", Map(0 -> 100)) == Map(0 -> 0))
    14     assert(run("[-]", Map(0 -> 100)) == Map(0 -> 0))
    12 assert(run("[->+<]", Map(0 -> 10)) == Map(0 -> 0, 1 -> 10))
    15     assert(run("[->+<]", Map(0 -> 10)) == Map(0 -> 0, 1 -> 10))
    13 assert(run("[>>+>>+<<<<-]", Map(0 -> 42)) == Map(0 -> 0, 2 -> 42, 4 -> 42))
    16     assert(run("[>>+>>+<<<<-]", Map(0 -> 42)) == Map(0 -> 0, 2 -> 42, 4 -> 42))
    14 
    17 
    15 
    18 
    16 val hw_urban = """+++++[->++++++++++<]>--<+++[->>++++++++++
    19     val hw_urban = """+++++[->++++++++++<]>--<+++[->>++++++++++
    17                   <<]>>++<<----------[+>.>.<+<]"""
    20                   <<]>>++<<----------[+>.>.<+<]"""
    18 assert(run(hw_urban) == Map(0 -> 0, 1 -> 58, 2 -> 32))
    21     assert(run(hw_urban) == Map(0 -> 0, 1 -> 58, 2 -> 32))
    19 
    22 
    20 val hw_urban1 = """++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.
    23     val hw_urban1 = """++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.
    21                    +++++++..+++.>>.<-.<.+++.------.--------.>>+.>++."""
    24                    +++++++..+++.>>.<-.<.+++.------.--------.>>+.>++."""
    22 
    25 
    23 assert(run(hw_urban1) == Map(0 -> 0, 5 -> 33, 1 -> 0, 6 -> 10, 2 -> 72, 3 -> 100, 4 -> 87))
    26     assert(run(hw_urban1) == Map(0 -> 0, 5 -> 33, 1 -> 0, 6 -> 10, 2 -> 72, 3 -> 100, 4 -> 87))
    24 
    27 
       
    28   }
       
    29 
       
    30   Await.result(f, 32 second)
    25 }
    31 }
    26 
       
    27 Await.result(f, 32 second)
       
    28