Happy Pi Day in Shen

Here’s a port of the previous Qi II code to Shen.
Run with Hakan Raberg’s 0.1.4 version of shen.clj (Shen implemented in Clojure !).

```*
Accurately calculates N digits of Pi using Machin's formula
with fixed point arithmetic and variable guards digits.
Depends on the maths library -->
http://www.shenlanguage.org/library.html
*
(tc +)
(define arccot-
{number --> number --> number --> number --> number --> number}
X N XPOWER    0 _ -> 0
X N XPOWER TERM 1 -> (+ (arccot- X (+ N 2) (floor (/ XPOWER X))
(floor (/ XPOWER N)) 0)
(floor (/ XPOWER N)))
X N XPOWER TERM 0 -> (- (arccot- X (+ N 2) (floor (/ XPOWER X))
(floor (/ XPOWER N)) 1)
(floor (/ XPOWER N))))
(define arccot
{number --> number --> number}
X UNITY -> (let XPOWER (floor (/ UNITY X))
(arccot- (* X X) 1 XPOWER (floor XPOWER) 1)))
(define machin-pi
{number --> number}
DIGITS -> (let GUARD (+ 10 (ceiling (log' DIGITS 10)))
UNITY (expt 10 (+ DIGITS GUARD))
(floor (/ (* 4 (- (* 4 (arccot 5 UNITY))
(arccot 239 UNITY)))
(expt 10 GUARD)))))
(1+) (time (machin-pi 100))
run time: 2.56899999999996 secs
31415926535...4350265344N : number
```