Hola Salva,

Esto me ha hecho pensar cuando Elizabeth Swann está pactando con el capitán Barbosa para que cese el ataque a Port Royal...

 

Ella va diciendo condiciones y Barbosa las acepta todas.

Cuando ya no tiene más condiciones, Barbosa ordena parar el ataque y largarse cagando leches... pero Elizabeth quiere bajarse del barco y Barbosa le contesta algo así como "eso no era parte del trato"

En tu "trato" no está el no usar un parámetro... angel

Class CodeGolf.NatoTranslator
{
Parameter P As %String = "!###########,##.#################?##Alfa#Bravo#Charlie#Delta#Echo#Foxtrot#Golf#Hotel#India#Juliett#Kilo#Lima#Mike#November#Oscar#Papa#Quebec#Romeo#Sierra#Tango#Uniform#Victor#Whiskey#Xray#Yankee#Zulu#######Alfa#Bravo#Charlie#Delta#Echo#Foxtrot#Golf#Hotel#India#Juliett#Kilo#Lima#Mike#November#Oscar#Papa#Quebec#Romeo#Sierra#Tango#Uniform#Victor#Whiskey#Xray#Yankee#Zulu";

ClassMethod ToNato(As %String) As %String
{
(r,d)="" x=1:1:$l(t) v=$p(..#P,"#",$a(t,x)-32) s:$l(v) r=r_d_v,d=" "
r
}
}

Esto da 83 reales de a ocho... digo... bytes smiley

USER>w ##class(ITPlanet.Task2).length("CodeGolf.NatoTranslator","ToNato")
83
USER>do ##class(%UnitTest.Manager).RunTest("CodeGolf")
 
===============================================================================
Directory: C:\zfly\CodeGolf\
===============================================================================
  CodeGolf begins ...
Load of directory started on 08/27/2021 11:06:43 '*.xml;*.XML;*.cls;*.mac;*.int;*.inc;*.CLS;*.MAC;*.INT;*.INC'
 
Loading file C:\zfly\CodeGolf\CodeGolf.xml as xml
Imported class: CodeGolf.NatoTranslatorTest
 
Compilation started on 08/27/2021 11:06:43
Compiling class CodeGolf.NatoTranslatorTest
Compiling routine CodeGolf.NatoTranslatorTest.1
Compilation finished successfully in 0.015s.
 
Load finished successfully.
 
    CodeGolf.NatoTranslatorTest begins ...
      TestUsingHardCodedStrings() begins ...
        AssertEquals:##class(CodeGolf.NatoTranslator).ToNato("If you can read")== "India Foxtrot Yankee Oscar Uniform Charlie Alfa November Romeo Echo Alfa Delta" (passed)
        AssertEquals:##class(CodeGolf.NatoTranslator).ToNato("Did not see that coming")== "Delta India Delta November Oscar Tango Sierra Echo Echo Tango Hotel Alfa Tango Charlie Oscar Mike India November Golf" (passed)
        AssertEquals:##class(CodeGolf.NatoTranslator).ToNato("go for it!")== "Golf Oscar Foxtrot Oscar Romeo India Tango !" (passed)
        LogMessage:Duration of execution: .000139 sec.
      TestUsingHardCodedStrings passed
      TestUsingRandomStrings() begins ...
        AssertEquals:##class(CodeGolf.NatoTranslator).ToNato($ListToString(strin,""))== $ListToString(strout," ") (passed)
        LogMessage:Duration of execution: .000036 sec.
      TestUsingRandomStrings passed
    CodeGolf.NatoTranslatorTest passed
  CodeGolf passed
 
Use the following URL to view the result:
http://172.24.103.120:52775/csp/sys/%25UnitTest.Portal.Indices.cls?Index=3&$NAMESPACE=USER
All PASSED