⍝ Monitor D function:
osc mdf 27
112 osc←{ ⍝ Oscillate - probably returns 1.
112 1=⍵:1
111 2|⍵:∇ 1+3×⍵
70 ∇ ⍵÷2
0 }
105 gcd mdf 330
4 gcd←{ ⍝ Greatest common divisor.
4 ⍵=0:|⍺
3 ⍵ ∇ ⍵|⍺
0 }
sieve mdf 2 to 100
5 sieve←{ ⍝ Sieve of Eratosthenes.
5 ⍺←⍬ ⍝ Default no primes yet.
5 nxt←1↑⍵ ⍝ Next prime, and
5 msk←0≠nxt|⍵ ⍝ ... mask of non-multiples.
5 ∧/1↓msk:⍺,⍵ ⍝ All non multiples - finished.
4 (⍺,nxt)∇ msk/⍵ ⍝ Sieve remainder.
0 }
⍝∇ mdf osc gcd sieve to
Back to: code
Back to: Workspaces