Chapter 4: Shapes II, drawing Shapes (short)

We are presented with some coercion functions and asked

Ex 4.1: Why is inchToPixel x not defined as 100 * round
x
?

It is instead defined as round(100 * x). This is because if
rounding was done on the input parameter, then whether it was, say, 1.01
or 1.99, the answer would be the same: 100*(round 1.01) = 100*1 = 100.

Ex 4.2 Why is pixelToInch n not defined as intToFloat
(n/100)

Similarly, this is to do with fixity/order of application of
expressions: The version above would first try to evaluate
n/100, which will fail, as n is an Integer, and
“/“ isn't defined for Ints.

That's it for the exercises. I played along with the examples, which
basically amounts to copying out of the book – actually I think that's
more instructive than just reading or getting the source code off the
internet, because it helps develop finger-memory.

Well, he does leave a “you may wish to define these functions on your
own as an exercise”, but right now, I'm going to bed instead.