thanks for feedback. Concerning using of Guids in Caml - it is a good idea and we will include this feature in the 2nd release.
About your idea - we wanted to leave as more natural syntax as possible. I.e. now you can use expression passed to Camlex in the regular "if" statement and will work without any changes.
One more moment - in your example
(string)x["Status"] == "Completed"
cast to string is not requred for successfull compilation as string is reference type (just Resharper will warning you about possible unintended reference comparision). But if you will use some value type (e.g. int or DateTime) - it will not be
compiled without casting:
as indexer of SPItem has object return type. So wee need to write
in order to compile the expression