rebol/rebol — pull request #164 by hostilefork (2013-10-03 16:23:18+00:00)
Title: Meanings of TRUE and FALSE w.r.t. INTEGER! for TO vs. MAKE (CC #2055)

Very simple change implementing the idea that things like TO LOGIC! 0 are TRUE, while things like MAKE LOGIC! 0 remains false. The converse is that TO INTEGER! TRUE or TO INTEGER! FALSE return errors, while MAKE INTEGER! TRUE returns 1 and MAKE INTEGER! FALSE returns 0.

Does not remove the `true?` or `found?` mezzanines, as consensus on that did not seem to have been reached, and @earl believes that `true? x` can read better than `to logic! x`. Separate ticket(s) should be opened for those issues.

Three core-tests affected:

* `[false = to logic! 0]` [link](https://github.com/rebolsource/rebol-test/blob/master/core-tests.r#L1793)
* `[0 = to integer! false]` [link](https://github.com/rebolsource/rebol-test/blob/master/core-tests.r#L1692)
* `[1 = to integer! true]` [link](https://github.com/rebolsource/rebol-test/blob/master/core-tests.r#L1693)