Parameter Order in Rebol

Some thoughts here

It's really hard, though, to see this systemically with fresh eyes.

Today for instance REPLACE takes the thing to do the replacement in first:

>> replace [a b b a] 'b 'c
== [a c c a]

But if this philosophy were extended that would become either of:

>> replace 'c 'b [a b b a]
== [a c c a]

>> replace 'b 'c [a b b a]
== [a c c a]

It's hard to say which makes more sense. If the "how you would write it out in English" argument comes up, it seems briefest as:

replace 'b <with> 'c <in> [a b b a]

I'm not sure how that would hammer out in the other case:

replace 'c <wherever you find> 'b <in> [a b b a]

But once you move away from the "obvious-seeming" cases, the whole thing stops seeming obvious. There's a lot of inertia behind the historical choices...this is tough to reason about.