chiark / gitweb /
11a: faster Inspect copied back from 11b
authorBen Harris <bjh21@bjh21.me.uk>
Sat, 11 May 2024 10:53:52 +0000 (11:53 +0100)
committerBen Harris <bjh21@bjh21.me.uk>
Sat, 11 May 2024 10:53:52 +0000 (11:53 +0100)
11/11a.bqn

index 0b50b4d4a5e9de449b47b182398cf8ec52ea55ee..909674b31f3d1f2c148a8a6504f4bd26699831cb 100644 (file)
@@ -8,22 +8,21 @@ Split←{
 Monkey←{𝕊desc:
   items←{𝕩∊", "}⊸Split(18↓1⊑desc)
   items↩•ParseFloat¨(⟨⟩⊸≢¨items)/items
-  op←' '⊸=⊸Split 19↓2⊑desc
+  inspect←{
+    𝕊⟨"old","*","old"⟩:{𝕩×𝕩};
+    𝕊⟨"old","*",n⟩    :{𝕩וParseFloat n};
+    𝕊⟨"old","+",n⟩    :{𝕩+•ParseFloat n}
+  }' '⊸=⊸Split 19↓2⊑desc
   divisor←•ParseFloat 21↓3⊑desc
   iftrue ←•ParseFloat 29↓4⊑desc
   iffalse←•ParseFloat 30↓5⊑desc
   count⇐0
   Catch⇐{items∾↩⟨𝕩⟩}
-  Inspect←{
-    ⟨"old","*","old"⟩𝕊old:old×old;
-    ⟨"old","*",n⟩    𝕊old:oldוParseFloat n;
-    ⟨"old","+",n⟩    𝕊old:old+•ParseFloat n
-  }
   Relieve←{⌊𝕩÷3}
   Turn⇐{𝕤
     {𝕊i:
      count+↩1
-     i↩Relieve op Inspect i
+     i↩Relieve Inspect i
      (((0=divisor|i)⊑⟨iffalse,iftrue⟩)⊑monkeys).Catch i
     }¨items
     items↩⟨⟩