#!/usr/local/bin/apl --script ⍝ Run with: ./TGI0.apl ⍝ The square root of ¯1, a pure imaginary number. ⍙J ← 0J1 ⍝ CMPLX is an array function. ∇z ← m CMPLX n z ← m + ⍙J × n ∇ ⍝ NORMJ is an array function. ∇ z ← NORMJ m z ← m × + m ∇ ∇ z ← a MODTST b; r0; r1; r2 z ← 0 → ( ( a = 0 ) ∨ z ← ( ( r1 ← NORMJ a ∣ b ) < r0 ← NORMJ a ) ) / 0 ⍞ ← "a = " ⍞ ← a ⍞ ← ", b = " ⍞ ← b ⍞ ← ", ( NORMJ a ∣ b = " ⍞ ← r1 ⍞ ← " ) ≥ ( NORMJ a = " ⍞ ← r0 ⍞ ← " )" ⎕ ← " " ⍞ ← "r2 = b ÷ a = " ⍞ ← r2 ← b ÷ a ⍞ ← ", b = r2 × a =" ⍞ ← r2 × a ⎕ ← " " ∇ cnt ← 21 bgn ← ¯1 - cnt2 ← ⌊ cnt ÷ 2 a ← b ← ints ← bgn + ⍳ cnt alpha ← ⊖ ⍉ a ∘.CMPLX b ⎕ ← " " foo ← alpha ∘.MODTST alpha ⍝ rhp ← ⍉ ( ⍳ cnt2 ) ∘.CMPLX ( bgn + ⍳ cnt ) ⍝ foo ← rhp ∘.MODTST rhp