rebol/rebol — pull request #181 by earl (2014-02-16 23:49:29+00:00)
Title: Update of #164: Have TO LOGIC! 0 return true

A minor adaptation of #164 to avoid the extra scoping blocks. No functional difference to #164.

The full original #164 PR message, for reference:

> Very simple change implementing the idea ([CC #2055](http://issue.cc/r3/2055)) 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.
>
> Tree 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)