You can check this yourself by looking at the QAST nodes after the static analyzer has had its fill:
# diff -u <(perl6 --target=optimize -e '"test".IO.e') <(perl6 --target=optimize -e '"test".IO.e.Bool') On Mon, May 18, 2020 at 12:25 AM ToddAndMargo via perl6-users < perl6-us...@perl.org> wrote: > On 2020-05-17 21:19, ToddAndMargo via perl6-users wrote: > > On 2020-05-17 20:28, Paul Procacci wrote: > >> So tack a .Bool at the end. > >> You are coercing a bool to a bool by doing so and hopefully the > >> optimizer is smart enough for people who like to be redundant. > >> > >> ;) > > > > Hi Paul, > > > > Especially when I can never remember when IO.someletter > > will return a full True or False Boolean and when it > > will return a True or a useless text message. > > > > The optimizer should have a lot of fun with me! Works > > darned well too! > > > > -T > > Speaking of optimizer, it would be interesting to see > if my coercing a half a Bool and a useless text message > to a True of False when analyzed takes more of less > optimizing than giving it a straight Boolean to start with. > > But now I are getting at some really deep trivia > -- __________________ :(){ :|:& };: