Letting Go of Enfix Path Dreams (but fixing it with "Magic")

Letting Go of Enfix Path Dreams

I had an idle curiosity of whether the New Semantics of PATH! and TUPLE! changes anything here.

If written this way (which it wouldn't be, it would be e.id, but let's ignore that) e can no longer be just anything. It is an object. And ID is an action. Them's the rules.

So that's one small leg up. But the rest of it... still the same old story.

Why Not Some Kind of Decoration to Force Enfix?

The SHOVE operator has proven very difficult to write and debug.

What if there were some syntax that paths could have saying "I know this is infix, treat it as such?" The person writing the code had to know it was infix, and the SHOVE operator makes them say it, but maybe there's some pattern...

>> 10 ::/lib.+ 20
== 30

:: is a WORD! but because it is something you can't put in a chain that means you can't assign it normally. So I've proposed it being evaluator neutral. Could be used here. (Plain : makes things inert, but probably not paths.)

Would be a simple solution to the currently over-engineered mess! But maybe :: is too valuable for this weird purpose. And if you're allowed to say:

set $:: make object! [lib: does [print "boo"]]

Then you'd be losing the lookup ability. Is there anything you can't look up that could go there?