As I wrote before, I made my original programming language. It is still pretty incomplete now, but at least I could write the following algorithm by that language.
This calculate n-th of fibonacci sequence. The following calculate 50th of
fibonacci sequence.
fn fib (n) { let mut f0 = 0; let mut f1 = 1; let mut f2 = 0; for i in 1..n { f2 = f1 + f0; f0 = f1; f1 = f2; } println("Answer:"<<f1); } fib(50);
You can see execution time by -t option.
$ ./target/release/oran -f ./examples/hello.orn -t Answer:12586269025 443.486µs
443.486µs. Not bad.
Now let's calculate pi by Leibniz formula:
let mut s = 0; for i in 0..(10^7) { s = s + (-1^i) / (2 * i + 1); } println("Ans: " << (4*s))
This is pretty slow. When the number of loops is 10^8, it takes even 30 secs. Not sure why this is so slow.
Maybe the for loop implementation in the language can be improved by memoise?
Top comments (0)