Fibonacci.x10 540 B

1234567891011121314151617181920212223
  1. // file Fibonacci.x10
  2. public class Fibonacci {
  3. public static def fib(n:Long): Long {
  4. if (n < 2) {
  5. return n;
  6. }
  7. val f1:Long;
  8. val f2:Long;
  9. finish {
  10. async f1 = fib(n-1);
  11. async f2 = fib(n-2);
  12. }
  13. return f1 + f2;
  14. }
  15. public static def main(args:Rail[String]) {
  16. x10.io.Console.OUT.println("This is fibonacci in X10.");
  17. for (var i:Long=0; i < 10; ++i) {
  18. x10.io.Console.OUT.println(i + ": " + fib(i));
  19. }
  20. }
  21. }