BT

F#用型プロバイダーの作成

| 作者: Jonathan Allen フォローする 594 人のフォロワー , 翻訳者 編集部N フォローする 0 人のフォロワー 投稿日 2013年1月1日. 推定読書時間: 2 分 |

原文(投稿日:2012/12/29)へのリンク

 

型プロバイダーは、F#の面白いフィーチャである。開発者の観点から言えば、それらは静的に定義されたあらゆる型のようである。しかし、CLRアセンブリのメタデータから来るより、設計時に実行されるコードによって必要な時に生成される。ソースは何でもよく、データベース、REST, あるいはODataスタイルのwebサービスが最も共通のオプションである。

2011年の記事で、Ivan Towlson 氏がいかに開発者が外部サービスを見ないコードにおいて、型プロバイダーを作成して、決まりきったコードを減らすことができるかを示した。彼の例は長さが変わるベクター型と同じものに適用する共通の操作を作成した。

彼と他の人の成果はFSharpxプロジェクトに移された。その中には、9つの型プロバイダーセットがあり、直接使うこともできるし、ヒントに使って自分独自のものを作ることもできる。

  • FSharpx.TypeProviders.AppSettings
  • FSharpx.TypeProviders.Documents
  • FSharpx.TypeProviders.Excel
  • FSharpx.TypeProviders.Freebase
  • FSharpx.TypeProviders.Graph
  • FSharpx.TypeProviders.Machine
  • FSharpx.TypeProviders.Math
  • FSharpx.TypeProviders.Regex
  • FSharpx.TypeProviders.Xaml

FSharpxは、Apache License, Version 2.0のもとで提供されているオープンソースプロジェクトである。

統計分析言語Rを頼りにしている人々には、 Blue MountainがF# R Type Providerを提供している。この型プロバイダーもオープンソースプロジェクトとして提供されている。標準的でない、非常に寛大なライセンスである。

F#の型プロバイダーについてもっと知りたければ、 Joe Pamerのビデオ、F#の将来:型プロバイダーとMicrosoft Researchの論文F#3.0 インターネット規模の情報ソースをサポートする強い型付け言語を見ると良い。

同様な機能を提供している他の言語を見るのも役立つだろう。そのような言語の1つがGosuである。このJVMベースの言語は彼らが言うオープン型システムを使っている。 Cedric Beust氏がオープン型システムへの良い入門記事を書いており、更に深い議論への多くのリンクを含んでいる。

 

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT