@@ -37,7 +37,7 @@ let asyncLength =
37
37
38
38
asyncLength |> Async.RunSynchronously
39
39
40
- // Listing 36.5
40
+ // Listing 36.4
41
41
let getTextAsync = async { return " HELLO" }
42
42
let printHelloWorld =
43
43
async {
@@ -46,7 +46,7 @@ let printHelloWorld =
46
46
47
47
printHelloWorld |> Async.Start
48
48
49
- // Listing 36.6
49
+ // Listing 36.5
50
50
let random = System.Random()
51
51
let pickANumberAsync =
52
52
async { return random.Next( 10 ) }
@@ -59,7 +59,7 @@ let createFiftyNumbers =
59
59
60
60
createFiftyNumbers |> Async.Start
61
61
62
- // Listing 36.7
62
+ // Listing 36.6
63
63
let urls = [| " http://www.fsharp.org" ; " http://microsoft.com" ; " http://fsharpforfunandprofit.com" |]
64
64
let downloadData url = async {
65
65
use wc = new System.Net.WebClient()
@@ -75,7 +75,7 @@ let downloadedBytes =
75
75
76
76
printfn " You downloaded %d characters" ( Array.sum downloadedBytes)
77
77
78
- // Listing 36.8
78
+ // Listing 36.7
79
79
let downloadData url = async {
80
80
use wc = new System.Net.WebClient()
81
81
printfn " Downloading data on thread %d " System.Threading.Thread.CurrentThread.ManagedThreadId
@@ -90,7 +90,7 @@ let downloadedBytes =
90
90
91
91
printfn " You downloaded %d characters" ( Array.sum downloadedBytes.Result)
92
92
93
- // Listing 36.9
93
+ // Bonus - custom computation expression!
94
94
type Maybe () =
95
95
member __.Bind ( opt , func ) = opt |> Option.bind func
96
96
member __.Return v = Some v
0 commit comments