chiark / gitweb /
21a simplified
authorBen Harris <bjh21@bjh21.me.uk>
Fri, 31 May 2024 12:52:20 +0000 (13:52 +0100)
committerBen Harris <bjh21@bjh21.me.uk>
Fri, 31 May 2024 12:52:20 +0000 (13:52 +0100)
Less cleverness, more flexibility for 21b

21/21a.bqn

index 37e6e0684e0b02748067063627207f8c0e5eb7b9..50226b4562e77589350c19178e42375873083723 100644 (file)
@@ -5,15 +5,13 @@ Prep←{
 
 Main←{
   monkeys←⟨⟩•HashMap⟨⟩
-  Monkey←{
-    𝕊⟨name, number⟩: name monkeys.Set number;
-    𝕊⟨name, x, opcode, y⟩:
+  {(⊑𝕩) monkeys.Set (1↓𝕩) }¨𝕩
+  Eval←{ 𝕊⟨number⟩: number;
+    𝕊⟨x, opcode, y⟩:
       op←⊑("+-*/"⊐opcode)⊏⟨+,-,×,÷⟩
-      Fn←{𝕤, ((monkeys.Get x){𝔽} @) Op ((monkeys.Get y){𝔽} @) }
-      name monkeys.Set fn
+      (Eval monkeys.Get x) Op (Eval monkeys.Get y)
   }
-  Monkey¨𝕩
-  (monkeys.Get "root"){𝔽} @
+  Eval monkeys.Get "root"
 }
 
 •Show Main Prep •file.Lines ⊑•args