mns←{ ⍝ Make NS from association list ⍵. ⍺←⎕NS'' ⍝ default new space. 0=⍴,⍵:⍺ ⍝ list exhausted: finished. name class value←{(1↑⍵),¯2↑2,1↓⍵}⎕IO⊃,⊆⍵ ⍝ first triple. class=2:⍺ ∇ 1↓⍵⊣name ⍺.{⍎⍺,'←⍵'}value ⍝ var: assign. class∊3 4:⍺ ∇ 1↓⍵⊣⍺.⎕FX value ⍝ fn or op: fix. class=9:⍺ ∇ 1↓⍵⊣name ∇ ⍺.{ ⍝ space: recursively process, (⍎⍺,'←⎕NS ⍬')⍺⍺ ⍵ ⍝ in new sub-space, }value ⍝ the sub-list. 'Eh?'⎕SIGNAL 11 ⍝ unrecognised class: abort. } code_colours test script Back to: notes Back to: Workspaces