Keeping in mind:
- TikZ uses space tokens significantly, and
expl3syntax completely disregards whitespace and will only become more prevalent,
is it reasonable to expect a future version of TikZ where expl3 syntax is taken into account? It would obviously be catastrophic if its syntax changed, but is it feasible to do this 'behind the scenes'?
If it is not feasible (I really don't have a good grasp on on TikZ), is there a workaround that does not litter the environment with ~?
Edit for Christian:
They should only be visible to package-writers on the programming layer. Under \ExplSyntaxOn, keys like current page.south west and remember picture 'compress' to currentpage.southwest and rememberpicture respectively. Obviously these keys aren't defined, thus an error. It's only an absolute headache inside a new definition, where catcodes cannot be effectively changed with a simple \ExplSyntaxOff.
:with catcode letter can be a problem with TikZ. In practice I found using\ExplSyntaxOffand\ExplSyntaxOnagain the easiest way (http://chat.stackexchange.com/transcript/message/13200713#13200713) – cgnieder Jan 19 '14 at 19:51pgfkeysto allow spaces in key names is disputable; but it's not the only point where there's conflict: parsing of TikZ commands is very dependent on spaces anyway. However this is not a concern at the user level, where\ExplSyntaxOffholds. It's quite difficult to program inexpl3using TikZ constructs, but the two (sub)languages really belong to different levels. – egreg Jan 19 '14 at 20:00expl3serving the programming layer where TikZ belongs to a presentation layer, not necessarily at the user level? – Sean Allred Jan 19 '14 at 20:05current~ page.south~ westisn't really too hard IMHO – cgnieder Jan 19 '14 at 20:24moderntimeline. That, and I've no idea what damage:could cause, as you bring up. – Sean Allred Jan 19 '14 at 20:26\tl_const:Nx \c_<module>_colon_tl { \token_to_str:N : }and using\c_<module>_colon_tlwhere needed. – cgnieder Jan 19 '14 at 20:30current~page.south~westlooks fine to me (you don't need to use both a tilde and a space) – David Carlisle Jan 20 '14 at 01:26