【.NET】F#について語れ2【OCAML】

■ このスレッドは過去ログ倉庫に格納されています
2011/05/01(日) 02:46:49.52
MSResearchから出てきた.NETで使える関数型言語のひとつF#
OCAMLの流れを汲むこの言語、いろいろと面白そうなことができそう。
そろそろ日本語の情報が充実してきそうなこの言語について、幅広く語れ。

http://www.fsharp.net/

前スレ
【.NET】F#について語れ【OCAML】
http://hibari.2ch.net/test/read.cgi/tech/1186030985/

関連スレなどは >>2-
2012/03/31(土) 18:25:38.97
無償環境だと、F#はVS Shell、WPはVS C# Expressに結びつく。
そして、F#を通常のVSに結びつけるのには、ExpressではなくProfessional以上じゃないといけないはず。
286営利利用に関するLR審議中@詳細は自治スレへ
垢版 |
2012/04/01(日) 05:19:32.41
ありがとうございます
つまり、無償ではF#でWindowsPhoneの開発は出来ないって事でいいですか?
2012/04/01(日) 09:13:04.20
>>286
IDE使わなきゃ出来るでしょ。
2012/04/01(日) 18:23:52.74
イデの力は使うべき
2012/04/01(日) 20:09:10.15
イデに取り込まれるぞ
2012/04/01(日) 20:27:12.26
shellとC# expressをバラバラに使って、開発は出来るので、
F#でportableなライブラリーつくって、UIはC#かな。
2012/04/01(日) 20:36:18.11
http://msdn.microsoft.com/ja-jp/magazine/gg983483.aspx
http://visualstudiogallery.msdn.microsoft.com/092d3f67-c938-4e53-ba1f-3baf6a15aa89
http://freshbrewedcode.com/danmohl/2012/01/23/making-f-windows-phone-development-a-little-easier/

MonoDevelopも、F#環境用意するの面倒だし、wp開発環境も分かりやすい物ではなかった気がする。
2012/04/01(日) 22:22:29.30
http://visualstudiogallery.msdn.microsoft.com/site/search?f%5B0%5D.Type=User&f%5B0%5D.Value=Daniel%20Mohl&sortBy=Date
F#のプロジェクトテンプレートいぱーい
2012/05/02(水) 13:05:02.14
webページの日本語をパースするスクリプトを
f# + .netで作ってみるお
2012/05/02(水) 21:52:39.46
がんばれ
2012/05/11(金) 07:25:02.60
複数のファイル作ったらネームスペースを書けと言われるし
ネームスペース書いたら中に値を置くなと言われるし
2012/05/11(金) 09:49:01.82
嫌ならC#にかえるしか(´・ω・`)
2012/05/12(土) 10:51:30.16
デフォルトで前方参照ができないとか、まるで20年前の言語のようだ

Scalaと比べると見劣りするなぁ
2012/05/14(月) 00:50:46.94
>Scalaと比べると見劣りするなぁ
うわー。言うよねー、Scalaの人って、こういうこと。
2012/05/14(月) 16:26:01.35
Scalaは型推論がショボすぎる時点でない(´・ω・`)
2012/05/17(木) 00:55:43.23
やはりBetter Javaではなあ…
今までJavaをやって来て超アンチMSだったので
F#の方が逆に新鮮w
2012/05/17(木) 08:55:12.22
by far much better Java だけどね。
302デフォルトの名無しさん
垢版 |
2012/05/17(木) 09:26:13.63
F#ってBetter Javaだったの!?
2012/05/17(木) 09:30:51.75
Scalaがってことでしょ。
2012/05/18(金) 11:15:27.50
今までJavaをやって来て超アンチMSだったので( ・`ω・´)キリキリッ
2012/05/19(土) 10:24:38.34
前方参照できないのと型推論がショボイのさあどっち!
2012/05/19(土) 10:39:36.45
JAVAかMS(win)かでしょやっぱ
2012/05/19(土) 11:26:06.56
JavaじゃなくてOracle
308デフォルトの名無しさん
垢版 |
2012/06/20(水) 16:50:25.33
F#のほーがセンスイイよ
2012/06/20(水) 17:54:28.48
主婦の7割が「韓国タレントは嫌い」 地銀シンクタンクが調査した実態とは

日本でのK-POPブームに陰りが見え始めたとも指摘される昨今だが、それでも新たなグループが続々と日本進出している。
今年に入ってからだけでも日韓同時デビューのA-JAX、吉本興業系のレーベルから日本デビューするMYNAME(マイネーム)、
さらには「K-POP最後の大物」との触れ込みで7月にデビュー予定のWonder Girls(ワンダーガールズ)など、相変わらずの
「雨後のたけのこ」状態。それほどまでに日本市場はK-POPにとってオイシイのか、そして本当にK-POPは日本で売れてい
るのか。その実態を探ってみた。

 大垣共立銀行(岐阜)系列のシンクタンクである共立総合研究所による「韓流消費に関するアンケート」の調査結果に、
実に興味深い調査結果がレポートされている。なんと、アンケートに回答した主婦の7割が「韓流は好きではない」との結果だったのだ。

 同研究所は<K-POPの台頭、食品、コスメをはじめとする韓国製商品ブームのマスコミでの取り上げ方、新聞の テレビ欄における
韓国ドラマの占有状況からかなりの盛り上がりを予想したが、結果は予想を下回るものであった>と、調査レポートを結んでいる。

結局、K-POPブームとは単にKARAと少女時代という個別グループのブレイクにすぎず、やはり実体などなかったということか。

http://uramono.org/entertainment/2576.html
http://uramono.org/uploads/2012/06/kara.jpg
2012/06/25(月) 18:06:48.86
下のようなコードでF#3.0だと両方呼べるんだが、
let y = (^a : (member talk: unit -> string) (a))
ってどういう仕組みなん?
ちなみに
let y = (^a : (member talk: int -> string) (a))
だと"2式が必要ですが、1が指定されました”と言われてエラーになる

let inline speak (a: ^a) =
let x = (^a : (member Name: string) (a))
printfn "I'm %s" x
let y = (^a : (member talk: unit -> string) (a))
printfn "I say %s" y

type Duck =
{ Name : string }

member x.talk() = "quackity quack"

type Dog(name) =
member x.Name = name
member x.talk() = "arrrr"
2012/06/25(月) 18:18:39.27
unit -> string というメンバ「talk」を持っている型 ^a に対して、a という変数を渡してその関数を呼び出してます。

let y = (^a : (member talk: int -> string) (a))
がエラーになるのは、int -> string な ^a 型の関数に対して ^a 型の変数しか渡してないから。
let y = (^a : (member talk: int -> string) (a, 42))
のように、int 渡してあげればいいはずですよ、っと。
312311
垢版 |
2012/06/25(月) 18:22:12.77
ちなみにインデント重要なので元コードへのポインタ貼っときますね
https://gist.github.com/2964839

もしコピペするんであればlignt syntax使わずに書き直した方がいいかもです。
313311
垢版 |
2012/06/25(月) 18:24:21.04
> 282
なごやいいとこいちどはおいで!
2012/06/25(月) 21:09:21.93
>>312
operatorに使えるのは知ってたんですが、普通のメソッドにも使えるのは知らなんだ。
2012/07/09(月) 00:41:53.18
http://blogs.msdn.com/b/dsyme/archive/2012/06/19/the-f-survival-guide-archived-edition.aspx

F# Survival Guide、Web Archivesで見つかる。
2012/07/13(金) 21:56:44.17
F#はじまってた
ttp://d.hatena.ne.jp/zecl/20120524/p1
2012/07/23(月) 15:59:04.70
F#すこぶる評価いいねえ
2012/07/23(月) 21:33:41.50
http://t0yv0.blogspot.jp/2012/07/speeding-up-f-printf.html
へー
2012/07/23(月) 21:37:38.22
https://bitbucket.org/zeux/fastprintf
2012/07/23(月) 22:01:26.20
>>317
しかし、ぜんぜんスレが伸びないw
321デフォルトの名無しさん
垢版 |
2012/08/25(土) 19:33:41.01
F#がこの先生きのこるには
2012/09/01(土) 12:57:08.28
surfaceが爆発的に普及すれば.net基盤だからF#にも出番ある
323デフォルトの名無しさん
垢版 |
2012/09/18(火) 21:41:33.61
OCamlを勉強してて色々モヤモヤした部分があったけど、
F#で不満だった部分がかなり解消されてて驚いたわ
マイクロソフトさんありがとう、今まで悪口言ってすみませんでした
2012/09/18(火) 22:20:15.65
具体的に
2012/09/19(水) 11:08:31.77
>>322
いやsurface、別に.NET基盤じゃないから。.NET(Core)でも開発できるというだけで。むしろF#ではportable libraryとしてしかアプリ開発に使えないというように虐げられてるw
>>323
まず日本語をなおせ。OCamlで不満だったものがF#で改善されてた言うことか?
2012/09/19(水) 11:17:06.59
さすが読解力ないわ
2012/09/19(水) 11:39:35.37
無駄な煽りしかできない知障は引っ込めですぅ
2012/09/19(水) 11:55:07.05
>323は曖昧な書き方してるけど、理解できるよね。
問題になるとしたら規格書とか論文とかぐらいでしょ。
2012/09/19(水) 12:16:11.33
読解力無いというのは、文章から本来の意図を読み取れないという意味だが、>>325はなにか間違ってるのか?
2012/09/19(水) 13:19:43.06
F#erは煽りに弱い、と。。。
2012/09/28(金) 14:07:58.33
過疎の場所でわざわざ煽る奴はアンチじゃないからね
盛り上がって欲しいだけなんだよ
2012/10/03(水) 08:14:04.25
http://www.lexifi.com/ml2012/
MLワークショップ2012

対象言語にF#もあったけど、F#の発表はType providerのチュートリアルだけみたい。スライドが見やすい。
http://www.lexifi.com/ml2012/slides_petricek.pdf
2012/10/17(水) 01:41:52.00
Announcing the F# 3.0 Open Source Code Drop - Visual F# Team Blog - Site Home - MSDN Blogs
http://blogs.msdn.com/b/fsharpteam/archive/2012/09/24/announcing-the-f-3-0-open-source-code-drop.aspx
2012/10/23(火) 03:15:53.95
開発陣に中国人がいるからオワコン
F#でソフト作ったら情報駄々漏れ
2012/10/24(水) 22:59:42.32
http://tirania.org/blog/archive/2012/Oct-22.html
Mono3.0 OSX版は、F#3.0バンドル予定みたい。
winやlinuxは別途いれないといかんのかな?
2012/10/24(水) 23:05:44.37
http://shootout.alioth.debian.org/u64q/benchmark.php?test=all&lang=fsharp&lang2=csharp
Ubuntuでも(ソースからビルドかもしれないが)動いてるようだ。
2012/10/25(木) 09:20:07.77
F# OPEN SOURCE GROUP @ GITHUB
http://fsharp.github.com/

Using F# across platforms (HTML5, Linux, Mac/OSX, Android, GPU, ...)
http://fsxplat.codeplex.com/

オープンソース版、Monoの最新版で動くように修正してるのか。
環境依存するのは有志の協力が必要なんだろうけど。
2012/11/04(日) 12:22:20.08
expressでもF#が統合出来る(vs2010ではvs shellのみだった)ようになったと聞いて、はじめから一緒に付いてくるのかと思ったら
Web Platform Installerから別にインストール必要があった。
http://blogs.msdn.com/b/fsharpteam/archive/2012/09/12/announcing-the-release-of-f-tools-for-visual-studio-express-2012-for-web.aspx
2012/11/04(日) 12:25:51.17
Microsoft、「Visual Studio Express」でF#言語を利用可能にするアドインを公開
http://m.forest.watch.impress.co.jp/docs/news/20120913_559448.html
2012/11/18(日) 13:16:39.14
Expressだとポータブルライブラリ作れないのか…
2012/11/22(木) 00:20:13.62
おまいらFsharpxとか見てる?(´・ω・`)
2012/11/22(木) 00:38:05.96
http://fsharp.github.com/fsharpx/
いみゅーたぶるとモナモナ?とかとおもったら、
F#3.0向けにいろんなTypeProviderやHTTPみたいなツールもあるんだな。
2012/11/22(木) 00:46:02.95
F#3.0 (オープンソース版)がmono3.0(のosx版たけ?)でビルドできて動いてるみたい。
http://fsxplat.codeplex.com/wikipage?title=FSharpMac

>>335
まだ、betaではmono3.0にバンドルされてないみたい。
2012/11/22(木) 00:58:36.44
オープンソース版の最新情報が更新されてた。
http://fsxplat.codeplex.com/documentation
linuxでもF#3.0 okで、WebShaper使うとhtml経由でクライアントサイドでもF# 3.0動くのか。

WebShaperって昔は商用しかなかったと思ったけど、
最近はAGPL3と商用$499-が選べるようになってた。
http://www.websharper.com/home
2012/11/22(木) 01:03:08.22
http://atnd.org/events/33927
今年もアドベントカレンダーやるんだ。
タイムリーに、F#3.0とosx/linux/android/webshaperのネタあるといいなあ。
346デフォルトの名無しさん
垢版 |
2012/11/22(木) 01:10:00.70
アドベントカレンダーって何ですか?
2012/11/22(木) 23:20:55.75
>>344
クライアントサイドではjavascriptとして動くからF#って言うとちと語弊が(´・ω・`) 
2012/11/23(金) 00:54:41.43
haxe, ocamljs, clojurescriptみたいなもんかな?
2012/11/23(金) 01:32:13.96
>>348
そんな感じだね。
基本はjsコンパイラで後はサーバーとのやり取りを書きやすく出来る仕組みがある感じかしら。
サンプルでチャートアプリ作ったけどF#で書いたロジックがさっくりと動いたよ。
でも情報が少ないから実際の製品での使用はちょっと躊躇しそう。
2012/11/23(金) 23:14:03.09
WebShaperとは別にPitっていう
F# to jsのコンパイラがあるのか。

githubのtopのプロジェクトリストにものってるがどんなものなんだろう。
http://fsharp.github.com/
2012/11/24(土) 08:31:53.59
F#でportable libraryのライブラリーを使う際に問題があるって話出てたんだがこれ今もそのままかな?
よく見てないんだが前にコンパイル出来てたRxのプロジェクトが確かにコンパイル出来てない希ガス。

http://social.msdn.microsoft.com/Forums/en-US/rx/thread/e64bbb9e-c273-4cce-9d42-8d52fbc0e654
2012/11/24(土) 08:34:14.30
>>350
WebSharperの方が商用のものを切りとってオプソにしてるからクオリティ高そうなイメージ(´・ω・`) 
2012/11/27(火) 00:11:22.61
ちょうどオライリーでWeb向けの本だしてる。薄いやつけど。

Building Web, Cloud, and Mobile Solutions with F#
By Daniel Mohl
Publisher: O'Reilly Media
Released: November 2012
Pages: 176
http://shop.oreilly.com/product/0636920026099.do
2012/12/04(火) 10:16:01.56
>>353
それ、最近の技術さっくりと触れてるので良いよ。F#での書き方の参考になって良い。関数型としてのことはそんなに深くは突っ込んでないけど。
2012/12/22(土) 01:06:09.92
http://tomasp.net/blog/manning-deep-dives.aspx
The book consists of 5 parts that cover the most common real-world uses of F#:
Developing of Analytical Components, Processing and Analyzing Data, Creating End-user Applications and F# in the Larger Context.

There is an increasing number of commercial F# applications. If you want to learn about the domains
where F# can make you more productive and help you to write correct code, or if you want to learn how F# experts approach different problems, then the upcoming F# Deep Dives book is the book for you!
2012/12/22(土) 01:09:34.04
洋書だと、二冊のF#2.0本もF#3.0本にアップデートされた以外にも実用本が増えてきたね。
2012/12/24(月) 14:17:42.43
>353-354
著者のブログで出版のお知らせ
http://bloggemdano.blogspot.jp/2012/12/buiilding-web-cloud-and-mobile.html
サンプルコード
http://dmohl.github.com/fs-web-cloud-mobile/

Kindle版が、オライリーの電子版の半額になってる。半額クーポンの時と同じ値段か。
358デフォルトの名無しさん
垢版 |
2012/12/24(月) 22:07:37.47
'a list list を 'a list にしたいんだけど、どうすればいいの?
Linq の SelectMany したいわけなんだけど。
2012/12/24(月) 22:38:04.70
>> 358
list |> List.collect id
としてみてはいかがでしょうか?
360358
垢版 |
2012/12/25(火) 08:40:21.42
ありがとう
2013/01/23(水) 00:29:00.59
POPL2013でF#のワークショップがあったみたいで
関数型プログラマーのひとが参加して
webshaperやtryfsharpなどいろいろな面に驚いてるな。
あまり日本では、取り上げられないので羨ましいかも。
2013/01/23(水) 00:33:31.51
Data Driven Functional Programming Workshop 2013
Co-Located with POPL 2013 | January 22, 2013 | Rome, Italy
http://research.microsoft.com/apps/mobile/showpage.aspx?page=/en-us/events/ddfp2013/

うぉ、ローマいってんのか。羨ましい、、、
2013/01/29(火) 11:06:33.39
日本どころか世界的に過疎ってんじゃん
hubfsもなんか見づらくなっとるし・・・
2013/01/29(火) 20:16:12.35
F#をちょっといじってみたけど
GUI作り辛いし、GUI作ろうとするとあまり関数型っぽくないしで、
本格的に利用しようとすると微妙だな
遊ぶには面白そうだけど
2013/01/29(火) 22:08:06.81
>>364
何つーかどこから突っ込んでいいのかわからんわ( ´Д`)y━・~~
2013/01/29(火) 22:36:35.46
突っ込めよ
2013/01/31(木) 01:11:10.42
056 [2009/06/24(水) 21:07:53] デフォルトの名無しさん <sage>

F#>Java いずれこうなるから安心しろ。

まあJ#は超えたな
2013/01/31(木) 19:37:16.95
scalaにも当てはまると思うが
関数型風にも書けるというマルチパラダイムは
結果的にいろんな書き方を覚えなければならないし、
そのいろんな書き方、ってのも癖があって覚えにくい
そのせいでF#らしさというものが希薄になってる、というのが欠点

これがマルチパラダイムの末路だ
結局は、限られた書き慣れてる書き方しかしないんだもんな
2013/01/31(木) 20:43:23.36
そんな自分の無能さを声高に言われても困ります。
2013/02/01(金) 22:54:27.13
GUIはC#とXAML、ロジックはF#でいいのでは。
2013/02/01(金) 22:55:19.34
GUIは、というのは支援ツールがあるという意味で。
2013/02/02(土) 10:34:18.44
GUIをF#で作るのは、C#のデザイナで作ってF#にコピペする作業だから空しい
2013/02/11(月) 22:50:03.36
F#って何に剥いてるの
2013/02/11(月) 22:53:25.09
包茎の童貞
2013/02/13(水) 13:20:44.23
まさにオナニーに向いているんだろうな

知的好奇心と言えば聞こえはいいが
ようするに自己満足
モノを生み出してナンボでしょ
2013/02/13(水) 14:38:03.45
そのモノを生み出すのにF#はC#より遥かに長けてるんだが…情弱乙(´・ω・`)
2013/02/13(水) 18:55:43.08
で、その生み出されたモノの例をあげてくれるかなぁ
2013/02/13(水) 20:18:11.82
は?F#使ってる人たちは、C#を使ってやるのと同じように仕事なりなんなりでプログラム書いてるだけだと思うけど。
その際に生産性がいいってだけだよ?
なにかF#や関数型を特別な魔法か何かのようにとらえすぎなんじゃね?
2013/02/14(木) 07:17:59.45
>>377
仕事でバッチファイルの代わりに.fsxでスクリプトを書いてます
インテリセンスが効くのと、Mainクラス作らなくても頭から実行してくれるので
型推論があるので動的型のように書けるところも好きです
2013/02/14(木) 07:37:25.07
Cygwin入れてPythonなりRubyなり使った方が早くね
2013/02/14(木) 07:58:04.93
>>380
そんな動的型要らんわ( ´Д`)y━・~~
2013/02/14(木) 12:25:55.36
>>380
インテリセンスは静的型じゃないと難しいのでは?
普段はC#使いなのですが、.NETとVisualStudioがそのまま使えるっていうのも大きいです
それにVisualStudioがインストールされている環境ならC#と違ってビルド不要で.fsxファイル一つで動きますし
2013/02/14(木) 21:36:47.85
Python Tools for Visual Studio
2013/02/14(木) 21:46:47.92
Typescript
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況