Should the C sources say `++foo` or `++ foo` ?

Generally speaking, the Ren-C sources try to adhere to the same kind of rules that Rebol uses. So instead of writing (x+y) the code uses (x + y), believing this is more legible.

It also embraces the idea of macros that define and for &&, and not for !. In addition to these being defined in C++ since the original C++98 standard as "alternative tokens", the C track has an ISO standard header for it, so you can #include <iso646.h> if you like:

In the C++ world, there are good reasons for preferring pre-increment and pre-decrement to post (all things being equal). While it doesn't matter in C it's good to stay in a good habit:

So I've habitually changed foo++ to ++foo when I see it, assuming it doesn't change the semantics.

But another maybe-seemingly-frivolous question arises, of if it would be better to put a space there? ++ foo? Is it a readability advantage that C programmers have been missing out on? Or is it wasteful and out of touch?

Hard to tell, as many people do like to say x=y+1020;, where we say x = y + 1020;. It seems natural that the sources for a language that believes in space significance would do so, I'm just curious what the operating rule for why this wouldn't apply to ++ and -- would come from.

The source is C++ code, so where readability for us as REBOL developers is improved by writing x = y + 2
it will not so much be improved with x = ++ y + 2 over x = ++y + 2.
Personally I prefer to have y = y + 1; x = y + 2; because I always doubt if y will be updated after x = ++y + 2 or that only the result of ++y has been used to calculate x.

Agreed, however, I don't like expresions like that. So all the instances are on lines by themselves:

SomeFunction(a, b, c);
++ b;

Or they are increments in loops:

for (; x < 10; ++ x) {

Anyway, I'm not going on a crusade to change it at the moment. But I did have a few places where I'd tried it to see what I thought about it. For a C programmer it's very hard to see that as "correct", I'm just wondering how much of that is habit.

Why not: #define up ++

Even better redefine every C++ into its Rebol counterpart. We could then write Rebol programs and compile all using gcc.