InfoQ

News

F#の最新事情:MonoDevelop、新刊、新しいCTP

作者 Jonathan Allen, 翻訳者 編集部 投稿日 2008年9月5日 午前6時17分

コミュニティ
.NET
トピック
IDE
タグ
Functional Programming,
F#,
MonoDevelop

F#は公式にはまだ研究プロジェクトに過ぎないが、この言語をめぐる熱狂に弱まる気配はない。今日の総まとめでは、F#の最新事情をザッと見てみる。

まず、MonoDevelop 2.0用の新しいF# IDEプラグイン(リンク)である。MonoDevelopの同バージョンは今もってプレビュー状態で、中には構文強調表示のように、MonoDevelopをソースからリコンパイルしない限り、働かないF#の機能もある。

次に『F# for Scientists(リンク)』(科学者のためのF#〔日本語版未出版〕)である。Don Syme氏が(リンク)次のように書いている。

まだ印刷版をもらっていませんが、この本の草案はすでに読んでおり、実のところ非常に感銘を受けました。3D視覚化に関する章では、その単純さと効果にびっくりしますし、提案されている並列プログラミング・テクニックは単純かつ強力であり、さらに、MathematicaやMATLABとの相互運用例や、Webデータベースを利用した例は、最新科学のかなりの部分を形成する必須情報やツールにつながる扉を開けています。

Amazonでは、Jamie Bernardin氏が次のようなレビューを書いている(リンク)

この本と同程度の質の本が増えればいいのにと思います。この本は、F#をきちんと把握したい人なら誰でも利用できますが、大学の応用数学やコンピュータサイエンスで使用する教科書(あるいは大学院課程の参考図書)としても最適です。整理が行き届いて、しっかり書かれた本であり、数理計算では典型的な例を利用しています。

易しい題材ではないので、時間をかけて読むにふさわしい本であり、おそらく2度読みが適当で、難解で強力なテーマの複雑な専門書の場合と同じです。一読で理解できなくても、粘り強く頑張りましょう。こうしたタイプの書物がお好きなら、この本の読書は喜びとなること請け合いです。論理的な流れで、はっきりと考えが述べられています。

F#の最大の問題はおそらく、F#が動く標的ということである。ツールと本は絶え間なくリリースされるが、バージョンも常に新しくなっている。ベータ版さえ出ていないF#は、進化し続ける。

September 2008 F# CTPは(リンク)、Visual Studio 2008をターゲットにしている。IDE機能には、素早い実験のためのスクリプティングモードや、アプリケーション開発向けのプロジェクトモードが含まれており、さらに、新しい言語サービスを介してIntellisenseを改善している。

 科学や工学の仕事に携わるすべての人々に非常に役立つこのCTPは、計量単位(リンク)のサポートも追加している。科学専攻の1年生なら、「毎秒50メートル」と「30秒」でかけ算できないことを知っていて、「kg・メートル/秒」を予想して変数を放り込むが、ほとんどのプログラミング言語はそれほど賢くない。F#ではメタ型のシステムを追加することにより、これを実現している。基礎をなしている型、通常は浮動型であるが、F#の変数にはその基礎をなす型が表す計量単位も分かっているのである。使用時にはIDEとコンパイラの両方がコンフリクトをチェックし、エラーとしてフラグをつけるようになっている。

原文はこちらです:   http://www.infoq.com/news/2008/09/FSharp-RoundUp

ブックマーク
digg+,
reddit+,
del.icio.us+,
dzone+,
Hatena

No comments

返信

特集コンテンツ一覧

Typemock: その過去・現在・未来

Eli Lopian氏率いるTypemock社の過去・現在・未来について、インタビュー形式にて記します。

企業とSaaSの仮想化がもたらすのは、迅速性(アップ)だけではない

この論文では、仮想化やクラウドサービスの複雑なメリットと実世界における応用を検討します。さらに重要なこととして、Contegixが複雑な問題の解決に仮想化を実装している方法や、仮想化を使うべきではないケースについて詳細を提供します。

RubyのFiberを非同期I/Oに使うNeverBlockとRevactor

Fiberはユーザに試練を課すことなくこの考えを実装する有益な並行性ツールとして、ライブラリが2つあります。まさにこのためのソリューションとしてあるのがNeverBlockライブラリです。私たちはNeverBlockプロジェクトのMohammad A. Ali氏とRevactorライブラリのTony Arcier氏に話を聞きました。

拡張性に関する悪習慣

システムの保守容易性や拡張性を確保するためのベスト・プラクティスに関する記事は数多くありますが、この記事では避けた方がいい、いくつかの悪習慣(ワースト・プラクティス)を強調します。

トップスポーツチームの監督に教わる秘訣

この論文では、氏が発見した原則を要約し、その原則をいかにしてソフトウェア開発に応用するかを説明します。

事例研究:Dutch Railwaysのプロジェクトにおける分散拠点でのスクラム・プロジェクト

この記事では、私達がどのようにして大規模(240人月、10万行強)でインドとオランダの開発者も参加したスクラム・プロジェクトを成功させたのかを示しています。

Agile2008チーム参加レポート - 帰国そして変化

Agileカンファレンスに「参加者としてだけでなく、発表者として参加しよう」を掲げたチームgoyattomは、サブミッションを提出し、7つのセッションが日本から選択されました。参加者はカンファレンスで各々の発表や、各セッションへの参加、諸外国のエンジニアとの出会い、ステージ上で DearXPを熱演などの様々な思い出を抱えて、無事日本に戻ってきました。

SilverlightとJavaのインターオペラビリティ

マイクロソフトのRobert Bellが、SilverlightとJavaを使用したインターオペラビリティのシナリオを紹介し、サンプルコードを例にとってアーキテクチャの手引きを提供します。