REMOTE←{ fd←⎕PIPE ⍵ out←{ msg←{1(2⊃⍵)}⍇⍬ raw←0 ⎕SERIAL msg len←(4⍴255)⊤≢raw _←fd ⎕WRITE len,raw ∇⍵ } in←{ m←1 ⎕serial fd ⎕read (4⍴255)⊥fd ⎕read 4 _←m⍈⍵ ∇⍵ } remote←{ 0≡≢⍵: ⍺∇out&'remote out'⊢⎕self ⍝ Spawn out thread 1≡≢⍵: ⍺∇⍵,in&'remote in'⊢⎕self ⍝ Spawn in thread (outid inid)←⍵ master←⍺ (from msg)←{1 ⍵}⍇⍬ _←{ from≡master: msg⍈outid from≢master: msg⍈master }⍬ ⍺∇⍵ } ⎕self remote&'remote'⊢⍬ }