progs/fun.scala
changeset 695 484b74bc057e
parent 669 2f5a4d76756d
equal deleted inserted replaced
694:b6ed836ce59b 695:484b74bc057e
    44 //
    44 //
    45 
    45 
    46 val library = """
    46 val library = """
    47 .class public XXX.XXX
    47 .class public XXX.XXX
    48 .super java/lang/Object
    48 .super java/lang/Object
    49 
       
    50 .method public <init>()V
       
    51         aload_0
       
    52         invokenonvirtual java/lang/Object/<init>()V
       
    53         return
       
    54 .end method
       
    55 
    49 
    56 .method public static write(I)V 
    50 .method public static write(I)V 
    57         .limit locals 1 
    51         .limit locals 1 
    58         .limit stack 2 
    52         .limit stack 2 
    59         getstatic java/lang/System/out Ljava/io/PrintStream; 
    53         getstatic java/lang/System/out Ljava/io/PrintStream; 
   200 }
   194 }
   201 
   195 
   202 def compile_and_run(class_name: String) : Unit = {
   196 def compile_and_run(class_name: String) : Unit = {
   203   compile_to_file(class_name)
   197   compile_to_file(class_name)
   204   (s"java -jar jvm/jasmin-2.4/jasmin.jar ${class_name}.j").!!
   198   (s"java -jar jvm/jasmin-2.4/jasmin.jar ${class_name}.j").!!
   205   println("Time: " + time_needed(2, (s"java ${class_name}/${class_name}").!))
   199   println("Time: " + time_needed(1, (s"java ${class_name}/${class_name}").!))
   206 }
   200 }
   207 
   201 
   208 
   202 
   209 // some examples of .fun files
   203 // some examples of .fun files
   210 //compile_to_file("fact")
   204 //compile_to_file("fact")