Quick Recap Of What's Wrong With Rebol2/Red/R3-Alpha
If you tried to make TAKE cause an error in Rebol2/R3-Alpha/Red, you would have to trap it via the closest thing they have to Ren-C's TRY (called ATTEMPT) which would put the call in a block:
rebol2>> attempt [take []]
== #[none]
But this would be very dangerous, as it would trap errors that weren't being emitted specifically by the TAKE. For instance, a typo:
rebol2>> block: [a b c]
rebol2>> attempt [take blockk] ; typo
== #[none]
Or it would gloss over a variable being of the wrong type:
rebol2>> data: 1020
rebol2>> attempt [take data] ; taking an integer!
== #[none]
These are simple examples, but there's no limit to how dangerous this is.
For more: Rebol2's "Hot Errors" (Abandoned by R3-Alpha, Red)