配布するのが大変って言ってる人は、ただでもわざわざ道路作んのかよってことだし
大変じゃないって人は、言えば作ってくれるんだからそれを使えばいいじゃんってことで平行線だな。
.NET3.5以前は入れたくないが
.NET4なら入れても良いと思う
歩く歩道はニュータウンには標準で付いてくるので、そろそろみなさんニュータウンに移ってください
わかりました
すぐに引っ越すので、前の住居の数メートル隣のコンビニをニュータウンの引越し先に設置しておいてください
ユーザーからのお願いです
ume
950でしばらくしたら落ちるんだっけ?
980だっけ?
>952
985辺りまで安全。立てるのは995前後でおk。
早く立てすぎると埋めるのがかなり面倒だから。
自分の周りでは結構F#話題に出るんだが、巷では全くはやってないのかね?
980で落ちる
>956
Real World Functional Programmingは良書(`・ω・´)シャキーン
他のに比べて関数プログラミングって何ぞやってところに多くを割いている。
>>954 個人的に趣味の範囲で、まだ興味持ってるけど
趣味ですら、ちょっと本格的なアプリつくろうって気にはなんないね・・・
メーリングリストとかFShubもコミュも死んでんじゃん?
>958
今度客先に出すアプリF#でつくってんだが・・・(´・ω・`)
海外は熱いよ!作りやすいよ!
961 :
デフォルトの名無しさん:2011/04/22(金) 23:24:52.90
過疎
仕事で使ってる人って、あんまりいないよね。
みんな何つくってるの?
うーん、海外だと金融系で使ってるとか言う話も聞くけど、
それも事実なのか、MSR の(MS経営陣に対する)アピール戦略で言ってることなのかいまいちわからない。
なんか、最近のMSRのF#の売り込み方だと、
データ解析&可視化の得意なREPL的な使い方してるのよね。
今金融系向けの仕事で使ってるお。
といっても今はあくまでもナイスな汎用記述言語としてしか使ってないけど。
金融系の本来の用途としてはDSL的に書けたり関数型ならではで並列を書きやすいってところがポイントかと。これはF#だからというよりもOCamlとかですでにされてるとこだと思うけど。
F#はそれ以外に.NETで強力なライブラリがあったり既存と連携がしやすいこと、F#ならではの言語仕様でいろいろと開発がしやすいことなど技術者さえ確保できるならほとんどの分野で有効だと思うんだけどなー
問題は技術者を確保できればってところで、保守が必要なものだと自分がいなくなっても
保守できるのかってあたりできびしいものが……
んーそれでもC#の技術者いるなら2,3週間でまぁ普通に使えるようになると思われ。
その時はC#と同じようなコードの書き方してるかもしれないけれどだんだんF#っぽいコードになってけばいいと思う。
そうするだけの価値はあるよ。生産性とか的に。
あー2,3週間は教える人がいるならのはなしね。
C#も生産性高いと思うけどF#ってさらに生産性が上がるの
そりゃ使い方次第だろうけど、そういうポテンシャルを持ってんの?
>>969 両方あまり知らないんだけど、俺みたいなド素人にでもパッと見で分かる
ようなとこは
・型推論がC#より強力。
・1..10 とか 'A'..'z'とか書ける(C# だとEnumerable.Range()とか使うと思う)
・組み込みで並列計算や非同期計算の機能がある。
・強力な型推論とあいまって、タプルがLLなみに使いやすい。
単に("this", 1)と書けばよくて、string * intの直積型(タプル)と
推論してくれる。値として返す場合も型宣言とか要らない。
・同様に、リストやシークエンスのリテラル表記やリスト内包が可能で
LLなみに使いやすい。
関数的なconsリストがサポートされていて再帰処理との相性もいいんだけど
これは関数型を知らないと良さが多分分からない。
・その他パターンマッチ等関数型特有の機能が色々便利、ただこれも関数型を
知らない人は、使ってみないと多分良さが分からない。
C 言語から派生してる OOP 言語と、関数型言語から派生してる言語は得意な場面が相補的だから、
C# と F# 両方覚えてそれぞれ得意な場面で使えば生産性上がる
くらいのものだと思うんだけど。
逆にF#はIDEとの相性の良さを捨ててる感じなので
(その点でC#はIDEでうまく補完出来ない言語要素は入れないようにしてる感もある)
単純なコードの字面だけから測ってF#のほうが上とは
生産性が尺度の場合は言えないなあ。
973 :
969:2011/04/29(金) 08:31:08.39
>>970 レスありがとう
ちょっとだけモチベーション上がった
プログラミングF#買った
言語の特徴としてはScalaとF#はそっくりだと思う。
*型推論:
F#,Scala -> ◯
C#,Java -> △,×
*代数データ型:
F#,Scala -> ◯
C#,Java -> ×
*パターンマッチ:
F#,Scala -> ◯
C#,Java -> ×
nullの廃止
F#,Scala -> ◯
C#,Java -> ×
モナド:
F#,Scala -> ◯
C#,Java -> ×
高階関数:
F#,Scala -> ◯
C#,Java -> △,×
変数:
F#,Scala -> デフォルトで破壊できない
C#,Java -> デフォルトで破壊できる
対話環境:
F#,Scala -> ◯
C#,Java -> ×
JavaからScalaへの大移動が始まっているのと同様のことがC#からF#に起こるに違いない!と言うのも本当かもしれない。
JavaからScalaへの大移動なんて始まってるの
ScalaとF#の比較は乙と言いたい
△と×の差が大きいんだよなあ。
C#→F#は起こらないとおも。
C#はラムダ式書けるから楽だよな
IDEとの連携が微妙だからなぁ
一時期はスクリプトとして使う分にはそこそこよかったんだが
今はpowershellがあるし…
うーむ
>971
でもC#のほうがF#よりとくいにできるってとこあんまなくね?
partial classとかはちょっと便利かと思うけど。
>972
IDEサポートはC#のほうが上だね。
リファクタとか参照してるところ一覧とかクラス名、メソッド名で一覧からジャンプとか。
でもVSのエクステンションで同じような機能を使えるのもあったから実際使っててそれほど困ってもない。コードの書き方の違いにもよってるのかな。
次スレ建てんとな
F#はMSの研究所による関数型言語の.NETへの実装で、MSのメインストリームである
C#が年々改良されていっている以上、F#の便利な機能はどんどんC#へ移植されて
いくんじゃないかと思っている。
なので、C# 6.0くらいになれば、もう汎用言語としてのF#のメリットは消えてるのではないかと妄想。
もちろん、関数型言語としての棲み分けはできるだろうけど。
次のC#で予定されているasyncなんかそうだよな。
C#とF#、OOPベースか関数型ベースかって差はどんどんなくなってるけど、
MSリサーチ臭の有無はいまだになくなってないし、そこが棲み分けのポイントじゃないかな。
F#の方が先に色々新しい試みしてて、
C#の方が時間かけてより良い形になってから新機能入れてる感じ。
>>984 F#のコア言語は1980年代からあるからC#よりずっと洗練されているよ。
クラスベースをメインとするC#では完全な型推論が実装できない事は証明されているし
代数データ型、パターンマッチ、モナドなんかを導入するのも不可能か、不自然な
構文になっちゃうんじゃないかな。
C#4.0ではdynamic型が導入されるしC#は今後は動的な言語の利点を取り入れる形に
なるんじゃないかな。
969あたりからのC#対F#の流れ勉強になるわ
80年代からあるから洗練されてるってなんかおかしくない?
普通、古いほど悪習が残るだけで。
だね。
正直、F#はあまりOCamlを引きづらなくても良かったんじゃないかと思う。
あと
> C#は今後は動的な言語の利点を取り入れる形になるんじゃないかな。
これは的外れ。
その辺りもリサーチ臭強い原因の1つなのよね。
C#がC++とかJavaから結構練り直してる部分あるのに対して、F#はOCaml過ぎ。
研究用言語をあまり練ってもしょうがないし。
F#を製品化するとか、作り始めた当初は思ってもなかったんだろうけど。
>>988 > > C#は今後は動的な言語の利点を取り入れる形になるんじゃないかな。
> これは的外れ。
かまわん続けろ
>>989 確かに構文だけみるとF#はOCaml過ぎて気持ち悪いけど機能ベースで見ると
Scalaとよく似てるよね。偉い人はそれがわからんのですけど。
ジェネリクスや型推論、クロージャなど関数型言語の利点は昔から着々と取り入れられて
来たけど、だんだん限界だよね。型推論の制限は取れないままだし、そのせいで匿名関数も
微妙だし、FParsecのようなパーサーライブラリはHaskellやOCamlでは昔からあったけど
C#では永遠に無理だろうね。
次スレ建てますよ、テンプレの拡充は次回のスレ建てでお願いします。
乙
このスレが急に盛り上がってちょっと嬉しい
>>975 の機能まとめは参考になるので次スレにも貼っていただけないでしょうか。