morse←{ ⍝ Conversion to/from Morse code. P M←{⍵~¨' '}\↓⍉↑{ ⍝ plain-text and Morse codes. ('A' ' .- ')('B' ' -... ')('C' ' -.-. ')('D' ' -.. '),⍵}{ ('E' ' . ')('F' ' ..-. ')('G' ' --. ')('H' ' .... '),⍵}{ ('I' ' .. ')('J' ' .--- ')('K' ' -.- ')('L' ' .-.. '),⍵}{ ('M' ' -- ')('N' ' -. ')('O' ' --- ')('P' ' .--. '),⍵}{ ('Q' ' --.- ')('R' ' .-. ')('S' ' ... ')('T' ' - '),⍵}{ ('U' ' ..- ')('V' ' ...- ')('W' ' .-- ')('X' ' -..- '),⍵}{ ('Y' ' -.-- ')('Z' ' --.. '),⍵}{ ('0' ' ----- ')('1' ' .---- ')('2' ' ..--- ')('3' ' ...-- '),⍵}{ ('4' ' ....- ')('5' ' ..... ')('6' ' -.... ')('7' ' --... '),⍵}{ ('8' ' ---.. ')('9' ' ----. '),⍵}{ ('.' ' .-.-.- ')(',' ' --..-- ')(':' ' ---... '),⍵}{ ('?' ' ..--.. ')('''' ' .----.')('-' ' -....- '),⍵}{ ('/' ' -..-. ')('(' ' -.--. ')(')' ' -.--.- '),⍵}{ ('"' ' .-..-. ')('@' ' .--.-. ')('=' ' -...- '),⍵}{ ⍵}⊂' ' ' / ' ⍝ blank / inter-word separator. 1=|≡,⍵:M[P⍳⍵∩P] ⍝ plain text to Morse. 2=|≡,⍵:P[M⍳⍵∩M] ⍝ Morse to plain text. } code_colours test script Back to: notes Back to: Workspaces