SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

japan.internet.com翻訳記事

.NET開発者向け新関数型言語 「F#」入門

新関数型言語「F#」の概要とVisual Studioへのインストール

  • X ポスト
  • このエントリーをはてなブックマークに追加

Visual StudioへのF#のインストール

 10月の終わりから11月の初めにかけてロサンゼルスで行われたMicrosoft PDC 2008(Professional Developer Conference)に参加したか、多くのF#セッションをオンラインで視聴したならば、MicrosoftがF#をVisual Studioの完全サポート言語にする予定でいることに気付かれたでしょう。つまり、Visual Studio(おそらく次の2010バージョン)のユーザーは皆、現在のC#やVisual Basic .NETと同様にF#のサポートを受けられるようになると思われます。

 しかし、本稿の執筆時点では、F#はまだCommunity Technology Preview(CTP)の段階で、最新バージョンは2008年9月に発表された1.9.6.2です(図1を参照)。このCTP版を使うにはVisual Studio 2008が必要ですが、他の.NET言語と同様、コマンドラインコンパイラのfsc.exeを使用することもできます。F#の現在のダウンロードパッケージのサイズは14メガバイトです。

図1 9月のCTP版のF#ではVisual Studio 2008が必要
図1 9月のCTP版のF#ではVisual Studio 2008が必要

 さらに重要なことに、F#は、例えばPowerShellプロンプトのように、対話形式でも使用できます。インタラクティブ版のF#は、プロトタイピングを短時間で行うのに非常に役立ちます。また、スタンドアロンのコマンドライン版として利用することも、Visual Studio 2008 IDEに統合することも可能です。コマンドライン版の名前は「fsi.exe」です(図2を参照)。

図2 F#はコマンドラインから対話形式でアクセスすることも可能。コマンドラインコンパイラもある
図2 F#はコマンドラインから対話形式でアクセスすることも可能。コマンドラインコンパイラもある

 Visual Studio IDEの内部では、[View]→[Other Windows]→[F# Interactive]メニューコマンドを使って、または、Ctrl+Alt+Fキーを押すことによって、対話型のF#インタープリタを開くことができます。当然ながら、このためには、F#インストールパッケージを最初にインストールしなければなりません(図3を参照)。コマンドライン版でコンソールを終了するには、「#quit;;」と入力します。ご覧のように、2つのセミコロンが必要です。これは、標準のステートメントセパレータです。

図3 Visual StudioにF#を統合すると、IDEに新しいメニューコマンドが表示される
図3 Visual StudioにF#を統合すると、IDEに新しいメニューコマンドが表示される

 全面的なVisual Studio統合が効果的ですが、現在のところ、まだ完全ではありません。例えば、F#でWPFまたはWebアプリケーションプロジェクトを開始することはできません。現時点では、ビジュアルデザイナを含まないコードのみのファイルを使用する必要があります。これに加えて、基本のF#コードファイル(ファイル拡張子が.fsのファイル)は非常にシンプルで、#lightディレクティブのみを含みます。このディレクティブは、いわゆる軽量モードを有効にします。この行の下に、各自のコードを記述します。

 F#では、コードをモジュールと個々の.fsコードに分割して、コードを再利用できます(図4を参照)。ただし、このCTP版では、実際に最初に実行されるファイルは、プロジェクトに追加されるコードファイルの順序に依存するようです。

図4 新しいF#モジュールの開始や追加は[New Project]ダイアログボックスで行う
図4 新しいF#モジュールの開始や追加は[New Project]ダイアログボックスで行う

 つまり、.fsproj XMLプロジェクトファイル内で.fsファイルが参照される順序が使用されます。Visual Studioのソリューションエクスプローラのポップアップメニューコマンドを使って、アイテムを上下に移動できます。幸いなことに、この操作は互いを参照していないモジュールにのみ影響します。

まとめ

 F#は関数型言語です。それに加えてオブジェクト指向プログラミングをサポートしており、その結果、最新の.NET Frameworkのあらゆる要素をサポートできます。C#などの言語に慣れている場合、関数型言語に慣れるのに多少時間はかかるかもしれませんが、言語を理解すればするほど、大いに役立つことでしょう。

 本稿では、F#言語の基本機能と、この言語が効果を発揮する理由と場所について説明しました。コード例を参照することで、特にビジネスアプリケーションにおいて、何ができるかを理解できるでしょう。もちろん、この1つの記事では説明しきれないほどの機能をF#言語は備えていますが、何事も最初は小さな一歩から始まります。

 今後、F#の重要性が増していくことは疑いようがありません。ほぼ間違いなく、Visual Studioの次のバージョン(バージョン2010)では、F#ビルトインがサポートされるでしょう。.NET全体をF#アプリケーションから自由に使えますが、F#を使用するのに最適なのは、高速なプロトタイピング、アルゴリズムの実装、数学関数に加えて、「小規模なプログラミング」が求められるすべてのものです。

 そのときまでに、関数型言語を習得しておきましょう。

リンク

 F#言語を初めて学ぶには、以下のリンクが役に立ちます。

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
japan.internet.com翻訳記事連載記事一覧

もっと読む

この記事の著者

japan.internet.com(ジャパンインターネットコム)

japan.internet.com は、1999年9月にオープンした、日本初のネットビジネス専門ニュースサイト。月間2億以上のページビューを誇る米国 Jupitermedia Corporation (Nasdaq: JUPM) のニュースサイト internet.comEarthWeb.com からの最新記事を日本語に翻訳して掲載するとともに、日本独自のネットビジネス関連記事やレポートを配信。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

Jani Jarvinen(Jani Jarvinen)

フィンランドのソフトウェア開発トレーナー兼コンサルタント。Microsoft C# MVPの受賞者で、投稿も多数。ソフトウェア開発に関する著書も3冊出版している。ITpro.fiというフィンランドのソフトウェア開発エキスパートグループのグループリーダー。ブログのアドレスはhttp://www.saunalahti.fi/janij/

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/3381 2009/01/19 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング