Remove wasted transparents, COLLECT beautify #137
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The original implementation of
<transparent>
was fairly trivial, and itoften marked cases of functions that would do code where the code
passed in was foreign. So they weren't where the buck stopped with
a return, rather it would continue to the caller.
That usage of transparent is no longer interesting or necessary...a
passed in RETURN living inside of CODE knows its binding and where
to go. But there are cases where is actually needed, for
instance where instead of DO-ing foreign code you are using that code
as the body of a function as part of your implementation.
Two good case studies of this are USE and COLLECT. And COLLECT
is such a good case study of the Zen of language extension using Rebol
that now that it's working, I wanted to clean it all the way up. But there is
an issue in keeping
<r3-legacy>
mode working if it's changed, due toa nuance interfering with the trick that usually lets "I want TRUE
refinements" vs. "I want WORD-valued refinements" live in peace. :-/
But rather than just accept that I went ahead and made the code itself
conditional so that the real example could be read, not intermingled with
the ugly stuff. Even with the APPLY and no definitional returns, "getting"
the original was one of my main inspirations for the pursuit of fixing the
missing system pieces to get it to its near-final (if not final) form...