A radical proposal from @Brett suggests using an infix operation for property extraction.
So instead of LENGTH-OF FOO… or LENGTH? FOO… or the extremely unpopular LENGTH FOO, we’d use LENGTH OF FOO.
While it may seem surprising that this idea never came up before, it wasn’t technically possible before. R3-Alpha was not able to have “OP!s” that quoted the left argument. At time of writing, Red can’t do it either:
red> of: make op! func ['property [word!] thing [any-type!]] [ print ["getting" property "of" thing] ] red> length of "sigh" *** Script Error: length has no value red> 'length of "sigh" getting length of sigh
In contrast, Ren-C has the technical mojo for infix OF. And my feeling is that this is a winner of an idea, and we pretty much have to do it.
But it starts to raise some questions just in general about the “philosophy of enfix” in Rebol. There are certain words in English that we do use infix, raising the question of if the corresponding functions in Rebol should be infix too. Words like AT, for instance…what makes more sense, at string 5 or string at 5? How about IN, should it be do in context […] or do […] in context?
When I asked this question of @earl way back when, his opinion was something along the lines of that Rebol bowing to infix was a practical issue. It created problems and made the language more irregular, and it shouldn’t be used any more than it absolutely had to. He didn’t want to see IN or AS or other operations becoming harder to work with by carrying the infix baggage.
But times have changed a bit. With the ability to complete an evaluation on the left side of an enfix operation (a “non-#tight” enfix), there’s been new and exciting (well, I think so) innovations with things like ELSE and THEN. I have to say that now that I have ELSE, I feel like I can’t go back. It has changed what Rebol looks and feels like, it’s less stilted and more natural. And grotesque things like
switch/default just fall away…
So I’m thinking that maybe we might want to enfix some operations that have been historically prefix. At the very least, we should make a list and weigh the issues. The die is cast now for OF, and that it has to be enfixed and left-soft-quoting. But how should we handle AS, AT, TO…? Any thoughts?