Różne zachowanie przy inicjalizacji modułu F #

Mam następujący program F #:

open MyModule

printfn "%d" test

Z MyModule jest:

module MyModule

printfn "foo"

let test = 
  printfn "bar"
  42

Daje to następujące dane wyjściowe:

foo
bar
42

Kiedy zmieniam MyModule na:

module MyModule

printfn "foo"

let test = 
  // printfn "bar" <-- note the comment!
  42

... wynik to:

42

Dlaczego „foo” nie jest już drukowane?

questionAnswers(1)

yourAnswerToTheQuestion