Morsecco: 54 bytes, score 3
Being a three-symbol language, a meta-cat automatically reaches a score of 3:
> echo Test | morsecco '. . . - .-. -.- .- -.-. ... . -.- - --- -.-. ... ---'
. -.-.-.. --..-.- ---..-- ---.-.. -.-. -.- - ---
> morsecco '. -.-.-.. --..-.- ---..-- ---.-.. -.-. -.- - ---'
Test
. .
E
nters an E
nter command
. - .-.
R
eads from stdin (special address T
)
-.- .-
K
onverts from ·T
ext
-.-. ...
C
oncatenates the dot and the converted input with two spaces for multi-token input
. -.- - ---
is the multi-token input for the later K
onvert to T
ext and O
utput
-.-. ...
C
oncatenates this to the existing code
---
O
utput the code
Morsecco: 217 bytes, score 0
IndeedYes, we can also do a zero-score version would be possible, because morsecco accepts alternatives for it's characters:
- TAB can be used instead of whitespace
- a long dash
–
(unicode 0x2013) can be used as dash
- the middle dot
·
(unicode 0x00B7) can replace the dot
But with no substitution commands right nowOf course, this replacement will be really hard ..adds a lot of bytes:
. . . - .-. -.- .- -.-. ... . -.- - --- -.-. ...
-- - -.-. - -.- .- . .-..... .- --.. ..
. .---. .- --.. --.
- .- . -........-..-- -- --.. --.
. -.--.--- -- --- --. ..
. -..-
-.- - . - .-- - - .-.. --.. --. - .- --.
The first line remains the same, but then we need to loop over the string, cutting one byte each time and translating it, because by now morsecco has no substitution command.