X



【.NET】F#について語れ2【OCAML】
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
垢版 |
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-
0665デフォルトの名無しさん
垢版 |
2015/09/24(木) 01:04:54.51ID:a1kb4fMZ
いや海外のコミュニティ盛んだしXamarinも力入れてるし、メジャーの次のグループの中では人気ある方だと思うが
0666デフォルトの名無しさん
垢版 |
2015/09/24(木) 10:00:36.92ID:TyqNOL17
あまり使い方の説明がないが、atomエディタ、yeomanのF# プロジェクト作成ツールを利用したクロスプラットフォームの開発環境
http://ionide.io/
xamarin studio/mono developでいいかなとおもってしまうが、コマンドラインツールはプラグインや設定みたいなのが作りやすい面はあるのかな。

ここで紹介されてるpaketというパッケージマネージャーだと、nuget以外にgithubからも直接持ってこれるらしい。
http://fsprojects.github.io/Paket/
0667デフォルトの名無しさん
垢版 |
2015/09/30(水) 13:41:01.14ID:3+jw6dgd
初心者にはわからんと思って、海外では盛んアピールしたがる奴がいるが
さびれてるのは海外でも同じ
Xamarinが推奨してるのもC#だし
結局.net=F#であり、monoでlinuxやmacで使おうなんて人いない
0669デフォルトの名無しさん
垢版 |
2015/09/30(水) 13:45:23.64ID:3+jw6dgd
海外では人気は嘘です!!!!
むしろ日本のほうが本もいっぱい出てて人気ある
>>664
サイトより本買ったほうがいい
ただブロガーは>>>649みたいにけんか売ってくる奴ばっかりだから気をつけよう
0671デフォルトの名無しさん
垢版 |
2015/09/30(水) 13:51:48.53ID:3+jw6dgd
>>581>>562>>583
こういう時にだけでてくるカスのせいで過疎った
0675デフォルトの名無しさん
垢版 |
2015/09/30(水) 14:29:17.59ID:mF2CNPGJ
キモイ人ががが
0679デフォルトの名無しさん
垢版 |
2015/10/01(木) 17:39:05.26ID:5FYO2fZ9
>>365>>369
だいたいこいつらのせい
反省したか?
0680デフォルトの名無しさん
垢版 |
2015/10/01(木) 17:42:24.77ID:5FYO2fZ9
>>675
おまえまだいたの?
F#スレでどうしてもキモイがどうとか話題にしたいのか
みんな迷惑してるがな
あとキモイ
0681デフォルトの名無しさん
垢版 |
2015/10/01(木) 17:43:19.73ID:5FYO2fZ9
>>675
わざわざこのスレに書き込むためにID変えてるとかキモい
0682デフォルトの名無しさん
垢版 |
2015/10/01(木) 17:44:09.65ID:5FYO2fZ9
>>676
勝手に参加すればいいんじゃない?
どうぞどうぞ
0683デフォルトの名無しさん
垢版 |
2015/10/01(木) 17:45:13.25ID:5FYO2fZ9
>>677
何が2冊しかないのか意味不明
勝手に笑ってろ
0687デフォルトの名無しさん
垢版 |
2015/10/01(木) 22:57:44.87ID:PxnDQ6Dp
>>679
お前何と戦ってるのwww
0689デフォルトの名無しさん
垢版 |
2015/10/15(木) 04:53:24.26ID:i9gnKKPa
>>568
対話型インタプリターなら明らかに1,2を争う重さ
これをあたかも重くないとか無理ありすぎ
0690デフォルトの名無しさん
垢版 |
2015/10/15(木) 07:36:53.33ID:NdAXA3Ht
別に普通に動くしな
動画のエンコードでもさせるの?
0691デフォルトの名無しさん
垢版 |
2015/10/15(木) 13:28:31.37ID:070VodXJ
>>688
それだけ話題がないだけなのに特定個人に責任をなすりつけるのは卑怯
ちゃんと荒らしてる奴叩けよ
0693デフォルトの名無しさん
垢版 |
2015/10/15(木) 13:29:25.42ID:070VodXJ
>>687
お前こそ誰と戦ってんだよゴミ
0696デフォルトの名無しさん
垢版 |
2015/10/15(木) 13:32:34.50ID:jR2HY8sf
>>690
動画のエンコードでもさせるのって全く話すり替えちゃってんじゃん
ちょっと頭おかしいんじゃないの?
0699デフォルトの名無しさん
垢版 |
2015/10/15(木) 13:35:38.61ID:jR2HY8sf
>>690
対話型インタプリターなら明らかに1,2を争う重さ
って事実言ってるだけだろ
なんで認めないのかな
0700デフォルトの名無しさん
垢版 |
2015/10/15(木) 13:37:41.51ID:jR2HY8sf
>>690
上げてまでこんなアホなこと書くなよ
お前みたいな奴のせいでF#が盛り上がらないんだろうが
0702デフォルトの名無しさん
垢版 |
2015/10/15(木) 13:41:05.51ID:fKPw05Xd
真正とか意味の分からない煽りしかしてこないくせに
ちゃんとF#の話題振れるのが俺だけという情けなさ
これが現実
0703デフォルトの名無しさん
垢版 |
2015/10/15(木) 18:25:16.73ID:I20ULMb+
俺もIDEやクロスプラットフォームの話題出してるけど、誰も反応無いから安心しな!
0706デフォルトの名無しさん
垢版 |
2015/10/24(土) 00:17:31.88ID:OhO9p6/T
いやいや.netとelixirは、と思ったけど、ホットな話題を巡回してる人はだいぶ前に移ってelixierも試してるだろうというのはあるな。
0707デフォルトの名無しさん
垢版 |
2015/10/24(土) 00:25:41.20ID:y0a6t9gb
.NET抜きにしても F# 悪くない言語だと思うんだけどなあ。
OCamlほど冗長じゃないし。
0709デフォルトの名無しさん
垢版 |
2015/10/24(土) 12:18:26.97ID:niXzNvfm
おめおめ
0712デフォルトの名無しさん
垢版 |
2015/11/01(日) 09:18:28.60ID:CKqa9WWI
>>711
C#で書くよりF#で書く方がはるかに楽だぞ
XAML絡みとかテンプレートが足りないとか以外でF#使えるところは全部使ってる。
0713デフォルトの名無しさん
垢版 |
2015/11/07(土) 12:07:04.32ID:ptDOELGY
FParsecで簡単にパーサが書けたのは良かった。
が、400行程度のパーサをMonoDevelopで開こうとしてフリーズしたり、LINQ to EFを使おうとしてよくわからなくなったりなど、
F#の周囲の開発環境で挫折中。気力が沸いたらまた挑戦するかもしれん。
0716デフォルトの名無しさん
垢版 |
2015/12/01(火) 09:59:57.25ID:q7bUA74Z
入れてもらえないっていうかRoslyn作ってる奴が馬鹿だから言語中立な部分と特有な部分をごっちゃにしてるから迷惑してるって感じかと
.NET Nativeにしてもそうやね
0719デフォルトの名無しさん
垢版 |
2016/02/18(木) 02:36:02.75ID:qcoEpmKF
楽だ楽だと主張してる奴がいるのになんで盛り上がらないのか
答え:5人位が楽だと言ってるだけだから
0722デフォルトの名無しさん
垢版 |
2016/02/18(木) 12:08:42.28ID:m09s+2fy
>>718
同様なものをC#とF#で作って、F#の方がはるかに短いコードでバグも少なくできたって調べてる人海外で幾つか見るけどね

大体言語の好みなんてほぼ主観だと思うけど、主観では型をアッチコッチに書かなきゃいけないC#は本当クソだわ

F#実案件での使用で問題なく使えてるから流行ろうがどうでもいい。
海外ではまあ十分盛り上がってるみたいだしサポート切られる事もしばらくないだろ
0724デフォルトの名無しさん
垢版 |
2016/02/29(月) 07:18:33.41ID:1lOTNWnw
オプソニなってるからそこまで痛く無い
つーてもVSとかからサポートされなくなるとキツイんだが。
切ったらMSセンスねーなとは思う
0725デフォルトの名無しさん
垢版 |
2016/03/01(火) 20:07:37.96ID:GW+Y//Y5
良いものが流行らず消えてく何てことは数限りなくあった
F# は今頑張らないと消えると思う
0726デフォルトの名無しさん
垢版 |
2016/03/31(木) 20:11:09.32ID:EaHe9wWS
F#はこれから頑張るとかいう時期は終わってるでしょ
今あるのは一通り評価得た結果あって
一部の人は気に入った、ということでいいと思う
普及するのまだまだこれからだ!
なんていう寝言はさすがにやめてほしいが
0729デフォルトの名無しさん
垢版 |
2016/04/03(日) 13:58:40.61ID:SJ9U6W4k
求人してるのが海外の金融関連中心ってのもあるかもね。
暗黙的に統計か金融の知識が必要な気がする。
0730デフォルトの名無しさん
垢版 |
2016/04/06(水) 12:57:58.71ID:QwJxwviB
F#オンリーの案件はむしろ稀でしょ
F#がわかる=C#エキスパート+実務経験あり&並行化の知識あり
と遅延評価すると妥当になる
0731デフォルトの名無しさん
垢版 |
2016/05/01(日) 16:56:51.63ID:tKi6j9CT
匿名通信(Tor、i2p等)ができるファイル共有ソフトBitComet(ビットコメット)みたいな、
BitTorrentがオープンソースで開発されています

言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか?

Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします
https://twitter.com/Lyrise_al

ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw


The Covenant Project
概要

Covenantは、純粋P2Pのファイル共有ソフトです

目的

インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します

特徴

Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW)

接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です
DHTにはKademlia + コネクションプールを使用します
UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります)
検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません
1t
0732デフォルトの名無しさん
垢版 |
2016/06/11(土) 17:16:42.35ID:ZtEjhTwV
F#勉強しはじめたばっかりですが、どなたか教えてください

Visual Studio 2015でF#プロジェクト作ってみたんですが、
「新規フォルダーの作成」のメニューがどこにも見当たらない
JavaとかC#とかでは、パッケージやnamespaceの階層に合わせてソースフォルダ掘ったりしますが、
F#ではそういうの無くて、ソースファイルはフラットに置いておくものなんでしょうか?
0733デフォルトの名無しさん
垢版 |
2016/06/11(土) 17:30:27.31ID:zSGsCTOB
>>732
extentionでF# Power Toolsというのを落とせばその機能が使える。
0741デフォルトの名無しさん
垢版 |
2016/08/30(火) 20:42:10.14ID:vrBeNxH6
間違いの無い記事は少ない
間違いを見つけ乍ら読むのがリテラシー
0743デフォルトの名無しさん
垢版 |
2016/09/02(金) 06:36:24.81ID:93bhRaHZ
どこに採用されてる?
0745デフォルトの名無しさん
垢版 |
2016/10/09(日) 13:09:22.51ID:7SKhoL6o
.netにバインドするライブラリってのは
たとえばデリゲートをどうすんのかとか
属性どうするのかとかですぐつまづいてしまう
JScript.NETやIronPythonがまさにそうだ
F#はそのへん良く頑張ってるな
0747デフォルトの名無しさん
垢版 |
2016/11/15(火) 16:44:14.09ID:G5nfQU/Z
質問させてください
F#をC#と併せて勉強中です。C#の場合、高階関数に渡すラムダ式の中で
以下のように配列のインデックスを使えるのですが、F#だとどう書けばよいか分かりません
F#のラムダ式中で配列のインデックスを使う方法があればお教え願います

(C#)
var array1 = new[] { 12, 33, 46, 8, 23, 42, 41};
var array2 = array1.Where((x, index) => index % 2 == 0).ToArray(); // array1の偶数番目のみの配列を新たにつくる

(F#)
let array2 = Array.filter (fun x index -> index % 2 = 0) array1 // こうはできない
0748デフォルトの名無しさん
垢版 |
2016/11/15(火) 17:51:26.35ID:Z1GMtli2
ちょっと長ったらしくて、もっとスマートなやり方があるかもしれんが
とりあえずは、こうすればできる

Array.mapi (fun index x -> (index, x)) array1 |>
Array.filter (fun (index, x) -> index % 2 = 0) |>
Array.map (fun (index, x) -> x)
0749デフォルトの名無しさん
垢版 |
2016/11/15(火) 18:46:06.01ID:G5nfQU/Z
>>748
なるほど、mapiだとインデックスが使えるんですね
そこで一旦indexを要素にもったタプルの配列をつくると
勉強になりました
0750デフォルトの名無しさん
垢版 |
2016/11/15(火) 20:50:47.44ID:OT10uw27
filterとmap重ねるならchoose使え
0752デフォルトの名無しさん
垢版 |
2016/11/16(水) 18:51:58.42ID:URMKBQmU
>>750-751
ありがとうございます
スマートに書けるようになりました

Array.indexed array1 |> Array.choose (fun (index, x) -> if index % 2 = 0 then Some x else None)
0754デフォルトの名無しさん
垢版 |
2016/11/16(水) 19:33:48.20ID:URMKBQmU
>>753
わざわざありがとうございます
こういうyieldを使った書き方はまだ詳しく勉強してないんですが、
こっちだと中間のデータをつくらないんでパフォーマンスがよさそうですね
勉強して試してみます
0755デフォルトの名無しさん
垢版 |
2016/12/13(火) 03:00:30.70ID:1DM7j7BI
F#って普通に個人で趣味アプリ作ったりする場合でもC#と比べて恩恵感じられる?
関数型って算術演算や金融関係で威力を発揮するけどそれ以外だと却って手間が増えるだけみたいなイメージある
0757デフォルトの名無しさん
垢版 |
2016/12/13(火) 09:05:12.17ID:/Iv3sNJB
>>755
C#に比べてVSのサポートがイマイチって所が多々あるけれど、それを補ってかつはるかに上回るメリット得られるお。
正直C#でなんかサポートが足りない所、たとえばUI周りとか以外で使いたくないしF#使える所は全部F#で書いてる。
0761デフォルトの名無しさん
垢版 |
2016/12/13(火) 19:01:53.31ID:QZ8rc8DA
>>760
やってみて損はないと思いますー
実案件で使えなくても考え方学ぶことでC#での書き方も良くなると思うし、実案件でも人の問題とかなければ使える場面は多々あると思う。
0763デフォルトの名無しさん
垢版 |
2016/12/27(火) 16:04:36.71ID:r8OAYz75
勉強し始めたけど、いつなくなるのか心配
MSって、切るときはバッサリ行くよな
0764デフォルトの名無しさん
垢版 |
2016/12/27(火) 16:22:15.15ID:ov9/Tp6R
もうとっくにイってます
0765デフォルトの名無しさん
垢版 |
2017/01/16(月) 12:32:54.03ID:w3fpx7c2
F#デビューしようと思って本探してるんだがC#er向けの本ってないのな
ググるとサイトはいっぱい出てくるけど
こういう場合は関数型言語について書かれた本をとりあえず買っとけばいいのかな
■ このスレッドは過去ログ倉庫に格納されています

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