In typesetting context, the expression \the\myToken is fully expanded and typeset in TeX's stomach. Thus the expected result is 1-9.
Macro \typeout is defined in latex.ltx:
\def\typeout#1{%
\begingroup
\set@display@protect
\immediate\write\@unused{#1}%
\endgroup
}
In this context (\immediate\write) the expression \the<token register> is expanded once, but the contents of the token register is not expanded further.
From "The TeXbook", "Chapter 20: Definitions (aka Macros)":
Expanded definitions that are made with \edef or \xdef continue to
expand tokens until only unexpandable tokens remain, except that token
lists produced by \the are not expanded further.
\immediate\write is not \edef or \xdef, thus we also need:
TeX's primitive commands \mark{...}, \message{...},
\errmessage{...}, \special{...}, and \write<number>{...} all
expand the token lists in braces almost exactly as \edef and \xdef
do. However, a macro parameter character like # should not be
duplicated in such commands; [...]
Example:
\edef\x{\the\myToken}
\show\x
> \x=macro:
->\DefaultValue .
\edef\x{\x}
\show\x
> \x=macro:
->1-9.
Thus you need to trigger the expansion twice to get the contents of the token register expanded.
Token register can be used to simulate eTeX's \unexpanded (however the construct will be non-expandable, \unexpanded is expandable). For example, this is used in \g@addto@macro (latex.ltx) that adds some tokens in the second argument to the macro in the first argument:
\toksdef\toks@=0
\long\def\g@addto@macro#1#2{%
\begingroup
\toks@\expandafter{#1#2}%
\xdef#1{\the\toks@}%
\endgroup
}
Macro #1 is expanded once and the result is put into a token register with the additional
tokens in #2. The following \xdef defines the macro with its original definition text with the tokens in #2 appended.
Expansion of token register inside \typeout
The contents of a token register looses their non-expandable behavior if it is touched twice:
\makeatletter
\newcommand*{\exptok}[1]{%
\expandafter\@firstofone\expandafter{\the#1}%
}
\makeatother
\typeout{\exptok\myToken}
Macro \typeout should not be redefined, the contents of token registers can contain stuff that breaks, if it would expanded (undefined commands, endless recursion, ...).
Also it would disturb the usages of \typeout for other, is the tokens where suddenly expanded.