学習の記録−11

F#コツコツ再開したい。
Visual Studio Express 2012 for web入れてF#ろうとしてた時に「fsi.exeがねぇよ! ヽ(`Д´)ノ 」と思ったら

C:\Program Files (x86)\Microsoft SDKs\F#\3.0\Framework\v4.0

にあった。

リハビリ開始。こんなんいける(いけたんだっけぇ・・・)

> [for x in 1..10 -> x*x] |> List.map (fun y -> y+1);;
val it : int list = [2; 5; 10; 17; 26; 37; 50; 65; 82; 101]

こんなんでフォームが立ち上がる。FormのコンストラクタはText=とちゃんと書いて渡さないとだめとかいまいち使い方わからん。

> open System.Windows.Forms;;
> let form = new Form(Text="Hello, world");;

val form : Form = System.Windows.Forms.Form, Text: Hello, world

> form.Show();;
val it : unit = ()


Visual Studio Express 2012 for webでコンソールアプリ作るの作り方が良く分からなかったが、チュートリアルを選択してコード消去してから以下のように書いたら動いた。
以下のコードはヤホーのHTMLページを取得してコンソール上に表示するもの。.NETライブラリ使うと楽でいい。出力の行(System.Console...)は printfn "%s" (reader.ReadToEnd()) でも良い。

open System.Net
open System.IO
[<EntryPoint>]
let main args =
    let url = "http://www.yahoo.co.jp/"
    let req = WebRequest.Create(url)
    let resp = req.GetResponse()
    let stream = resp.GetResponseStream()
    let reader = new StreamReader(stream)
    System.Console.WriteLine(reader.ReadToEnd())
    0