BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース F#用型プロバイダーの作成

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

原文(投稿日: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氏がオープン型システムへの良い入門記事を書いており、更に深い議論への多くのリンクを含んでいる。

 

この記事に星をつける

おすすめ度
スタイル

BT