ex 4.9 code added, fix a problem in ex 4.6 4.7 4.8 4.9, since the let paramter list could be null, and this is needed for dreving the do expression into a combination in which the first expression is a let without parameter