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

レス数が900を超えています。1000を超えると表示できなくなるよ。
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-
2017/06/04(日) 01:15:20.63ID:cMzio+d2
「ゆるふわ」な展開だよな
oO(だってデバッグでコンパイル警告増やしてる場合じゃないもん
  ということで>>847をそっとクリップボードに入れたとかは言えない)
2017/06/04(日) 17:19:25.85ID:schaDAVw
ビルドツール2015が落とせなくなってると思ったら
最新のビルドツール(現在は2017)だけ無償提供するけど
過去のはMSDNサブスクリプション限定になったんかよ
850デフォルトの名無しさん
垢版 |
2017/06/04(日) 20:22:54.65ID:Gh2GPGm+
なんでそんなめんどくさいことしてんの
2017/06/06(火) 02:33:04.78ID:sboLfrRP
環境作っちゃったからwそれに趣味だし
もし他人から環境作り聞かれることがあったらVSすすめるけど(質問攻めやだし)
2017/07/23(日) 00:57:49.83ID:M/QiPu/m
ファイルにクラスとかコレクションの値を書き込んだ後に、それを読み込むのに、
一般的な方法ってありませんか?

type Point = {mutable x : int; mutable y : int}
こういう定義があって、今はアドホックでこんな感じに書いてます。
0,0;0,1;0,2;0,3;0,4;0,5;
0,1;1,1;2,1;3,1;4,1;5,1;
これをSplitでString[]にして、
static member fromCSV(s:string) =
match s.Split[|','|] with
| [|a;b|] -> {x = int a; y = int b}
で読んでます。ダサいです。

このtype自体にはこだわりがないので、
[|[|0;1|];[|0;2|];[|0;3|];[|0;4|];[|0;5|]|]
[|[|1;0|];[|2;0|];[|3;0|];[|4;0|];[|5;0|]|]
みたいにデータ構造をそのままぱぱっと書き出して、ぱぱっと読める
みたいな方法はありませんでしょうか。
2017/07/26(水) 12:12:26.43ID:3m31p4un
BinaryFormatter使えばいいんでない?
テキストではなくなるけど
2017/07/26(水) 14:16:56.19ID:1pDXQGYB
調べてみます。
ありがとうございます。
2017/09/02(土) 22:37:34.57ID:RddLJ47T
F#人気にシット
2017/09/03(日) 01:52:15.83ID:JGQnBQPD
どこでそんなにんきなんだよ
857デフォルトの名無しさん
垢版 |
2017/09/03(日) 16:58:23.14ID:skndupQG
当社比
858デフォルトの名無しさん
垢版 |
2017/09/16(土) 06:54:46.85ID:AcW1bn43
びっくりするほどF#の話題ないね

言語人気ランキングだと関数型の中では
Scalaについで上位なんだけど
2017/09/16(土) 12:50:44.18ID:ZCzFTInQ
無冠の帝王
2017/09/16(土) 17:42:17.40ID:1hHCSG56
言語のバージョンアップも大してないしな
まあ自分はコンピュテーション式の組み立てとかも適当にしかできないので猿でもわかるコンプ式とか誰か上げてくれ
2017/09/20(水) 19:05:13.20ID:OSLHfjgE
完成度がたかいともいう
2017/09/24(日) 11:05:49.20ID:ByZ250WW
>>858
Scalaも大して話題ないし
あとはjavaと.netの差
2017/09/24(日) 16:06:41.16ID:vDIeG6fi
Scalaは言語として色々とんがってるから言語マニアを引きつけるのと、比較対象となるJAVAがアレなところが。
C#も色々アレなとこはあるけどモダンな言語機能も取り込んでるしJavaよりは遥かにマシだからな
2017/09/24(日) 17:59:58.12ID:ZoycLPfe
ScalaはJavaの後継を目指しているけど
F#はC#を補完する存在だから
Scalaほど話題にならないっていうのはあるかも
2017/09/25(月) 03:00:36.68ID:gDN5ioLV
F#の言語仕様にそんな大きな不満はないんだけど
やっぱScalaはJava陣営ってのが大きいだろうな
Androidがデファクトだから将来性がある
2017/09/27(水) 15:29:47.44ID:8/GL2nRX
ふっ ついにF#の時代が来たな

Microsoft、量子コンピュータ向けプログラミング言語を年内プレビュー公開へ
http://www.itmedia.co.jp/news/articles/1709/26/news064.html
2017/09/28(木) 10:26:23.30ID:PJxaABWy
こういうことらしい

https://www.nikkei.com/article/DGXLASGT26H1M_W7A920C1EAF000/
2017/10/05(木) 23:26:00.15ID:Ij0Gwxx3
OCamlに無いから採用してないんだろうけど、implicitな型変換は正直ほしい
2017/10/06(金) 09:20:34.16ID:mKx5GyI5
それは設計思想的にないだろうし、自分はない方がいいかな
まあ気持ちはわかる
2017/10/21(土) 14:48:51.44ID:x6jw+qXc
VS2015でF#4.1にしたいんだがF#だけ更新するやり方わからん
VS2017にするのが一番速いのかね?
2017/10/22(日) 23:28:29.96ID:gTHr4PQg
バージョンアップしようが話題にならんって相当だな
2017/10/23(月) 00:01:20.66ID:6heI0Z3K
まあ最近のバージョンアップ小粒ですし…
2017/10/23(月) 00:03:30.90ID:1HzbJqCQ
G#にバージョンアップする必要があるな
2017/10/24(火) 22:47:21.59ID:pt5mooPj
>>872
三笑亭可楽の名前の由来は
山椒は小粒でもピリリと辛い からきてるんだよ 豆な
ちなみに可楽は落語の始祖みたいな人
875デフォルトの名無しさん
垢版 |
2017/10/26(木) 21:35:56.69ID:oDCnt1ox
>>870

Use F# on Windows | The F# Software Foundation
http://fsharp.org/use/windows/

Option 4: Install the free F# compiler and tools alone
のとこの
.Install the free F# 4.1 Compiler SDK from Microsoft
これ?
2017/12/20(水) 11:18:33.39ID:Ay7mvacQ
俺たちの#はどこに

https://forest.watch.impress.co.jp/img/wf/docs/1097/447/html/image2.jpg.html
877デフォルトの名無しさん
垢版 |
2017/12/22(金) 18:07:18.10ID:bOdX3AhV
どこにってそこにある
それほど減ってない
pythonが食ってるのはphperなんだろううけど
それだけじゃこんなに増えないから全体のπも大きくなってるんか
2018/01/03(水) 11:03:42.83ID:+3UF4y6J
勉強するのに適当なサンプルコードあるとこ知らない?
例えば↓みたいなのが見たい

・関数型の参考になる
・副作用のコード
  ファイルIO
  フォーム
・クラス
2018/01/03(水) 12:53:42.85ID:0CrAnLpT
>>2にある通りだがF# Snippetsもいいと思うよ
関数型で副作用とかモナド信者が飛んできそうだが、そこはF#だから問題ないさ
2018/01/03(水) 13:24:47.91ID:+3UF4y6J
>>870
Thx F# Snippets見てみる
881880
垢版 |
2018/01/03(水) 13:25:59.15ID:+3UF4y6J
間違えた 本当は>>879です
2018/01/08(月) 10:44:39.24ID:szpKYJOz
そもそもここの奴らどのバージョン使ってるかもわからん
普通に最新版使ってんの?
2018/01/08(月) 10:46:43.90ID:szpKYJOz
モナド信者が筋斗雲のように飛んで来るように
F#ってそんなに注目されてるのかね
2018/01/08(月) 10:47:19.58ID:szpKYJOz
男ならF#2.0だろとかいい出す頭おかしいやついそう
2018/01/08(月) 13:24:55.92ID:OHUoS88C
>>882
諸事情で3。3.3.0.1あたりかな。
2018/02/19(月) 10:01:13.69ID:p8AEqh0V
実践F# 関数型プログラミング入門 読んでると
リストに気合入ってるんだけど
リストってLIFOじゃないですか

リストのコレクションとしての意味とかループとしての意味は分かるんですけど
LIFOの性質をこれまであんま使った記憶が無くて
その意味合いが分かんないんですよ
自分の中ではFIFOの方が使い勝手よさそうなのに、
あえてLIFOで実装された理由というかメリットが知りたいッス
2018/02/19(月) 12:04:06.23ID:nacKNyKE
由来は知らんけど、追加は効率いいよね。
パターンマッチもいいかなと思ったけどそれは配列なら似たようなもんか。
2018/02/19(月) 12:15:27.34ID:SrM6uAzC
immutableなFIFOリストの実装が非効率的だからでは
FIFOを効率的に実装するためにはリスト末尾と先頭への参照を持つ必要があって
複数箇所から参照されてる場合にそれぞれを破壊的変更する必要がありそう
889886
垢版 |
2018/02/19(月) 14:39:39.10ID:p8AEqh0V
事前に断っておくと、F#ではプログラミング初心者というか、つい先日からです

>>887 >>888
うん。なんとなくだけど実装上のメリットなら分からないでもないんだけど
結果として使いづらくなるのなら言語としてどうかなと

ちなみに、リストとかどういうケースで使ってますか?
やっぱ、あまり使わないですか?
2018/02/19(月) 14:55:29.81ID:L6jTtzQk
>>889
いや基本リスト使うけど。
中グルングルン回して何かする奴は配列の方が早いので必要な時は配列にする。
2018/02/19(月) 14:57:01.82ID:L6jTtzQk
コレクション、そも順序気にしないものも多いし。順序が必要な時は適宜rev入れたりして気を配ったりする必要はある。
2018/02/19(月) 15:22:05.36ID:p8AEqh0V
>>890 >>891
おおっ Thx

なんとなく、納得しました 差し当たって気にし過ぎたのかなw
やっぱ、最初のうちは とにかく書くだね
2018/03/02(金) 22:08:36.41ID:mYNfwuMl
>>886
自己レスなんだけど リストがLIFOの理由が分かった
結構単純な理由なんだけど

F#を含む関数型の場合、データー構造も再帰で表現できるんだけど
リストも再帰で表現されているため、LIFOにしか出来ない
マトリョーシカで例えると、最初のデータが一番小さいマトリョーシカしかで、
追加する度に大きなマトリョーシカに包含となる
結果として、データを取り出す際には大きなまとりょから取り出すことになり、LIFOにしかならないと

Haskellの本読んでて気づいた ちなみに、すごいH本読むと配列って記述無いんだよね
関数型と配列は相性が悪いらしい 不変じゃないしね 
Haskellの配列はモナドらしい さらにO(1)でないらしい 純粋だね〜
2018/03/03(土) 16:33:39.51ID:NvnCROHt
Lisp から入る人が多いから、自明だと思われているのでは?
2018/03/04(日) 11:45:52.08ID:1R6Vs5gf
演算子の優先順位(↓の一番下にある)の見方なんだけど
https://msdn.microsoft.com/ja-jp/library/dd233228(v=vs.120).aspx

| (パイプ) は|>のこと
f x (関数適用) は関数fの引数の割り当て f 1+2は  (f 1)+2という意味
f(x) は.Netの関数の適用

でOKですか?
あと、関数の合成(>>)に関する規定が無いように見えるんですけど、どれに対応しますか?
2018/03/04(日) 11:51:14.82ID:8KjE9Kl8
>>895
OKじゃない
2018/03/04(日) 11:57:54.21ID:1R6Vs5gf
>>896
せっかく書くなら お〜し〜え〜て〜
2018/03/04(日) 12:13:12.98ID:E6hDYpP1
結合って英語だと何になるんだ?
2018/03/04(日) 12:18:40.95ID:1R6Vs5gf
なんのこと言ってるのかなと思ったけど

>>895のリンクの最上部を見るんだ
900デフォルトの名無しさん
垢版 |
2018/05/23(水) 20:50:11.72ID:Au5e7VGg
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

C6RTQ
2018/06/17(日) 08:35:32.24ID:P5QWzQu/
vs2017 communityでwpf/xamlでエラーが出る
未対応なのか?
2018/06/17(日) 11:28:26.83ID:P5QWzQu/
vs2017のバグでした

https://developercommunity.visualstudio.com/content/problem/265926/xaml-editor-error-window-is-not-supported-in-wpf-p.html
2018/06/17(日) 15:54:06.27ID:FgYbN8CG
MS 『しっし…仕様ですぅ〜』
2018/06/27(水) 14:52:41.49ID:RqcpnlVd
>>893
Haskellの場合、リストを2つ使ってFIFOに変換する
1つはFIFOに変換したリスト もう一つは蓄えようのリスト

FIFOのデータが欲しかったら、蓄え用のリストからデータを順次取り出しFIFO用のリストに保存
FIFO用のリストを使い切ったら、また、蓄えようのリストからFIFOのリストに変換

つまり、裏(LIFO)の裏は表(FIFO) って使い方
905デフォルトの名無しさん
垢版 |
2018/07/05(木) 01:03:00.33ID:RfoszcD2
14X
2018/07/08(日) 06:55:34.24ID:8iLzUq+6
F*について語ろう
2018/07/08(日) 11:32:31.41ID:hbbias2s
聴きたいから語ってくれ
2018/07/09(月) 00:25:21.43ID:wCdtMiXw
くるしゅうない。続け給え。
2018/08/19(日) 12:19:47.10ID:ySfp0A4e
朗報や

マイクロソフト、「F# 4.5」公開
https://news.mynavi.jp/article/20180817-679022/
2018/08/19(日) 16:08:02.04ID:ALU66mBT
新機能について全然書いてないな
2018/08/19(日) 17:38:03.73ID:ySfp0A4e
F# 4.5の話
http://pocketberserker.hatenablog.com/entry/2018/07/02/090000
2018/08/19(日) 19:24:10.81ID:ABIkPAmi
ほいっ
https://www.infoq.com/jp/news/2018/08/fsharp-4.5-preview
2018/08/19(日) 20:36:25.07ID:ySfp0A4e
さしあたって、MSがF#を忘れていなかったのがうれしいw

Haskell勉強中 now
2018/08/19(日) 20:53:38.44ID:coCwFxQi
Match!は地味にいいな
後将来的な予定の匿名レコードはC#の匿名クラス的な使い方でそれがメソッド内超えて使えるようになる感じか?
2018/08/23(木) 06:30:40.48ID:NPcuqlt3
日本人は純粋好き
916デフォルトの名無しさん
垢版 |
2018/09/26(水) 12:04:36.29ID:kWlYqESN
忘れてないだけなのに小成功w
2018/10/19(金) 15:42:46.12ID:GX4EfSq9
MSの割にはアンチが少ないよな
相手にされてないとも
2019/01/17(木) 20:58:48.55ID:qOv+RZ4q
>>863>>864
Scalaのスレはなくなりここは残った
919デフォルトの名無しさん
垢版 |
2019/01/18(金) 04:12:05.97ID:6U5tZjv3
scalaのスレもうないのかω
2019/01/18(金) 14:40:27.50ID:Z5dNQJrg
はいscalaスレありました
2019/01/18(金) 15:37:52.09ID:mkL07vHv
scalaが思ったより早く廃れたのはそれこそjavaの混乱のせいか
いやもっと前?
F#はなんだかんでMSが見捨ててないからな〜
922デフォルトの名無しさん
垢版 |
2019/01/18(金) 15:42:40.48ID:tGJC1q7w
wrapperな時点で負け
2019/01/18(金) 15:49:27.22ID:r+tsjwzM
世間では圧倒的にScala >> F#でしょ
924デフォルトの名無しさん
垢版 |
2019/01/18(金) 19:31:06.14ID:wcIBYenX
Scalaの方がユーザーは多そうなのに
2019/01/22(火) 19:29:00.13ID:Rmc/4N6W
Scalaは流行り廃り激しいWeb系としてもてはやされたから急におとなしくなった感はある
今は固定層だけ使ってるんじゃね
F#は特に流行ってないから廃れた感じもないw
2019/01/22(火) 20:28:14.94ID:6RrYW1UH
俺は、Haskellずーーーーと勉強してる
一見わかりやすそうな文法なんだけど、難しいな これ
ただ、知識欲は満たされる
2019/01/24(木) 00:54:22.80ID:cVpDBcbd
ない ない どこにまない

【IT】習得したいプログラミング言語、したくない言語 プログラミング言語実態調査 2018
https://tech.nikkeibp.co.jp/atcl/nxt/column/18/00501/111200004/
928デフォルトの名無しさん
垢版 |
2019/01/24(木) 11:11:58.11ID:Y31ePpdj
こないだ見くびられてる言語5つに入ってたな
2019/01/26(土) 02:19:11.29ID:+8+f6anX
Lens最強!
2019/01/26(土) 21:42:56.42ID:+eApZUOf
正直C#に公式でOptionとEitherと末尾再帰最適化と諸々のイミュータブルなデータ構造周りを入れてくれればもうそれでいいや
931デフォルトの名無しさん
垢版 |
2019/01/26(土) 23:53:52.86ID:V+pxBIbs
型推論つかない限りC#クソって言い続けるわ
2019/01/27(日) 00:00:28.26ID:P/x67OqP
いつになったらUnityで公式採用されるんだ
933デフォルトの名無しさん
垢版 |
2019/01/27(日) 00:47:38.92ID:eERlvW+o
ほんそれ
テイルコールはいいから、せめてネスト型数の制限だけなんとかなってくれればなぁ
2019/02/01(金) 23:47:03.12ID:sNV+JFAU
書き込みあったと思ったらF#の話じゃなくてC#の話じゃんw
935デフォルトの名無しさん
垢版 |
2019/02/02(土) 12:45:41.79ID:5KhxZqJM
言語進化ペースも遅いからな
けど今度の匿名レコード型は期待してる
2019/02/08(金) 16:52:01.21ID:tR8OJZeG
C#どころかVB.NETに負けてるわけだしなあ
2019/02/08(金) 17:33:34.67ID:f4I6sDTP
何が負けてるん
2019/02/08(金) 17:42:19.22ID:MaZDbpb3
そもそもMS組の中で勝ち負けを考える言語だったとは驚きだ
2019/02/10(日) 00:46:10.56ID:uHfS+GVA
>>758
過小評価すんなよw
2019/02/10(日) 02:11:48.39ID:fQrCWNC5
まあC#8.0でまだ2.0にすら追いつけてないからな
2019/02/12(火) 03:21:13.66ID:SG0QUiA8
ぐぐるとブログの先生方のありがたい記事はアウトデイト過ぎて
qiitaに負けとる…
2019/03/05(火) 05:24:51.17ID:1ASLdeDU
https://qiita.com/cannorin/items/59d79cc9a3b64c761cd4
この人 GNU/Linux でしか F# 書いたことないとかまじか
なんでF#なんて使ってんだろ?まったく伝わらんw
943デフォルトの名無しさん
垢版 |
2019/03/05(火) 08:03:17.17ID:CS3QY3w6
いやそこになんでF#がいいか書いてるやんけ…
いろんな言語のいいとこ取り含め何が分からないんだ
944デフォルトの名無しさん
垢版 |
2019/03/05(火) 10:44:15.42ID:HwCl8Q1J
exeゲロるんだっけ
2019/03/08(金) 21:46:13.66ID:aklWlStJ
まだ見捨てられてないの?
946デフォルトの名無しさん
垢版 |
2019/03/08(金) 22:22:16.47ID:AvJAJo7K
最初から見捨てられてたからそれよりはマシになった感じ
947デフォルトの名無しさん
垢版 |
2019/03/09(土) 07:49:19.81ID:ZOfzHyh2
G♭の方がカッコイイ
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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