このへん
https://fsharp.org/
探検
【.NET】F#について語れ3【OCAML】
1デフォルトの名無しさん
2019/09/08(日) 19:16:25.58ID:8+6E4mCC2021/02/04(木) 22:07:05.94ID:OLEUfSPw
どういうバックグラウンド持った人か知らないけど、ベースから固めていきたい人ならf# 入門でググった結果→必要あればdocs.microsoft.comでいいと思うよ
作りたいアプリが決まってるなら、フレームワークの使い方から学んだほうが早いんでないかな。
作りたいアプリが決まってるなら、フレームワークの使い方から学んだほうが早いんでないかな。
2021/02/04(木) 23:41:01.03ID:4EyDekmA
ありがとうございます。見てみます。
75デフォルトの名無しさん
2021/02/05(金) 00:52:16.10ID:dNSp3+hf >>72
古い本だけどこれ良いと思うよ
F#を使って関数型なプログラムするのどうしたらいいかっての書かれてる
F#は3でtype providerとか大きいの入ったけどそのあとはこまめな変更入ってる感じだしこの本の内容は今も全然生きてる
https://www.manning.com/books/real-world-functional-programming
古い本だけどこれ良いと思うよ
F#を使って関数型なプログラムするのどうしたらいいかっての書かれてる
F#は3でtype providerとか大きいの入ったけどそのあとはこまめな変更入ってる感じだしこの本の内容は今も全然生きてる
https://www.manning.com/books/real-world-functional-programming
76デフォルトの名無しさん
2021/02/05(金) 00:53:07.00ID:dNSp3+hf でもアプリ作る所、はあまり書いてないかも
アプリが何を指すか分からんけど
アプリが何を指すか分からんけど
2021/02/08(月) 23:15:17.36ID:ow4Fgv7j
>>75
ありがとうございます。英語ですか・・・。
作りたいのはWindows用のGUIアプリで、
在庫管理の入力や報告書の作成とかの会社の雑務を自動化出来たらなと思ってます。
もちろんもっと相応しい言語や環境があるのは分かっています。
ただ会社に許可は貰ってますが、特に求められても急ぎでもない半分趣味なので
折角なら前から興味のあった関数型言語でやってみよう、Windowsなら.NETかなという感じです。
プログラミング経験はVBA、Python、TypeScript、PowerShellの様なスクリプト言語のしかありません・・・
GUIを作った経験はほとんどなく、基本的に開発環境から直接実行していました。
一応すごいHは読み終わっていてオブジェクト指向との違いは概ね理解しているつもりです。
ありがとうございます。英語ですか・・・。
作りたいのはWindows用のGUIアプリで、
在庫管理の入力や報告書の作成とかの会社の雑務を自動化出来たらなと思ってます。
もちろんもっと相応しい言語や環境があるのは分かっています。
ただ会社に許可は貰ってますが、特に求められても急ぎでもない半分趣味なので
折角なら前から興味のあった関数型言語でやってみよう、Windowsなら.NETかなという感じです。
プログラミング経験はVBA、Python、TypeScript、PowerShellの様なスクリプト言語のしかありません・・・
GUIを作った経験はほとんどなく、基本的に開発環境から直接実行していました。
一応すごいHは読み終わっていてオブジェクト指向との違いは概ね理解しているつもりです。
78デフォルトの名無しさん
2021/02/09(火) 00:44:50.72ID:jXcFb3DL >>77
日本語の本ほとんどないからねぇ…
自分はXamarinとかWindowsストアアプリでF#使ってたけどまあUIの仕組みとしてはMVVMであとはなんでもいいんじゃないですかね
Fabulous使う手もあるかもだけど
日本語の本ほとんどないからねぇ…
自分はXamarinとかWindowsストアアプリでF#使ってたけどまあUIの仕組みとしてはMVVMであとはなんでもいいんじゃないですかね
Fabulous使う手もあるかもだけど
79デフォルトの名無しさん
2021/02/09(火) 01:03:16.55ID:jXcFb3DL 上げられたようなアプリでいいならFabulousをWPF向けに使うので間に合いそうな気はします。
MVVM使った方が堅いとは思うけれど
MVVMの場合は全部F#でもいけるけどUI側はC#でやってVMから上はF#ってした方がデザイナでIDEの手助けを得やすいとかはあると思いまうす
MVVM使った方が堅いとは思うけれど
MVVMの場合は全部F#でもいけるけどUI側はC#でやってVMから上はF#ってした方がデザイナでIDEの手助けを得やすいとかはあると思いまうす
2021/02/15(月) 01:26:40.83ID:oA6rG6Z/
VMといえば仮想マシン
どーすればええやん?
どーすればええやん?
2021/02/17(水) 23:09:09.35ID:otlYz5oY
そういえば、.net 5って、Linux上のフォームアプリって未対応なん?
期待してたんだけど
期待してたんだけど
2021/03/06(土) 00:53:36.12ID:B9a8AcDd
Hakellってループすらない 腹たつのり
ところで、F#のシャドーイングって、ループのためにあんの?
ところで、F#のシャドーイングって、ループのためにあんの?
83デフォルトの名無しさん
2021/03/06(土) 02:31:20.35ID:UCFD3nLW 関係ないでしょ
自分的にはそこ以降のスコープではそれより前にあるものをさわれなくする仕組み
自分的にはそこ以降のスコープではそれより前にあるものをさわれなくする仕組み
2021/03/06(土) 10:37:10.03ID:B9a8AcDd
覚えているけど 名前からするとそっちかもしれんけど
でも、再代入とほぼ同じに見えるから… って思ってた
ただ、ループ中のシャドーイングやってみると、代入と違う動作だた。
最後にシャドーイングされたものが、次のループでも生きると思ってた
っていうことで、撤回
でも、再代入とほぼ同じに見えるから… って思ってた
ただ、ループ中のシャドーイングやってみると、代入と違う動作だた。
最後にシャドーイングされたものが、次のループでも生きると思ってた
っていうことで、撤回
2021/03/16(火) 20:47:37.00ID:rNZytrCC
fsdn稼働してないね、やめちゃったの?便利だったんだけどな
dotnet cliしかインストールしてないせいか知らんけどFsharpApiSearch動かんし。
dotnet cliしかインストールしてないせいか知らんけどFsharpApiSearch動かんし。
86デフォルトの名無しさん
2021/03/17(水) 00:22:11.85ID:XYPLqt0O 全然使ってなかったわ
どういう時に使うん?
どういう時に使うん?
2021/03/17(水) 00:29:51.51ID:BCS3Lg0C
レポジトリのreadmeにかいてあるよ
hoogleみたいなやつ
hoogleみたいなやつ
88デフォルトの名無しさん
2021/03/17(水) 13:51:03.97ID:XYPLqt0O シグネチャ元に探せるってやつだよね?
どういう時にそれが便利なのかがよくわかっておらず
どういう時にそれが便利なのかがよくわかっておらず
2021/03/17(水) 23:00:01.71ID:BCS3Lg0C
必要なapiをそらで言えれば、たいていは必要ないと思います。
自分は型でパズルしてるから使ってた。
例えばこんな問題どう?
// 改行区切りのコマンドリスト
let exec (cmdLine: string): () = pass
// 各ファイルへのコマンドを作る
let commands (filenames: string list): string =
…filenames
…|> List.map (fun n ->
………………………[
………………………Command (foo n 0)
………………………Command (bar n)
………………………Command (foo n 1)
………………………]
…|> 平たくしたいんだけどapiなんだっけ
commands |> exec
自分は型でパズルしてるから使ってた。
例えばこんな問題どう?
// 改行区切りのコマンドリスト
let exec (cmdLine: string): () = pass
// 各ファイルへのコマンドを作る
let commands (filenames: string list): string =
…filenames
…|> List.map (fun n ->
………………………[
………………………Command (foo n 0)
………………………Command (bar n)
………………………Command (foo n 1)
………………………]
…|> 平たくしたいんだけどapiなんだっけ
commands |> exec
2021/03/17(水) 23:04:39.26ID:BCS3Lg0C
あぁ…推敲しきらずポストしてもうた
怪しいところは汲み取ってください
要は、欲しい型はわかるんだけどapi覚えてないってときに使ってる
怪しいところは汲み取ってください
要は、欲しい型はわかるんだけどapi覚えてないってときに使ってる
91デフォルトの名無しさん
2021/03/18(木) 02:54:39.89ID:ijvJpcOi なるほろ
使ってみたら便利なのかも知れるなと思いつつ今はダメなのか
使ってみたら便利なのかも知れるなと思いつつ今はダメなのか
2021/04/14(水) 20:36:34.77ID:hiLJJetQ
W10Wheel.NET (F# 4.1) のソースを Visual Studio 2013 (多分 F# 3.1 だよね?) でビルドすることってできないもんかね?
W10Wheel.fsproj の中の TargetFSharpCoreVersion タグの値を 4.4.1.0 から 4.3.1.0 に書き直して挑戦してみたけど、後述のエラーでとおらなかったんだわ
唯一解決できたのは「エラー FS0039: 名前空間またはモジュール 'FSharp' が定義されていません」の行の open FSharp.NativeInterop → open Microsoft.FSharp.NativeInterop の手直しだけ
他の場所も、同様に機械的な手直しで潰せるなら、方法わかる人、教えてくれたら大感謝!
--
エラー FS0039: 値またはコンストラクター 'Ok' が定義されていません
エラー FS0039: 値またはコンストラクター 'Error' が定義されていません
エラー FS0039: パターン識別子 'Ok' が定義されていません
エラー FS0039: 値、コンストラクター、名前空間、または型 'defaultValue' が定義されていません
エラー FS0039: 値、コンストラクター、名前空間、または型 'contains' が定義されていません
W10Wheel.fsproj の中の TargetFSharpCoreVersion タグの値を 4.4.1.0 から 4.3.1.0 に書き直して挑戦してみたけど、後述のエラーでとおらなかったんだわ
唯一解決できたのは「エラー FS0039: 名前空間またはモジュール 'FSharp' が定義されていません」の行の open FSharp.NativeInterop → open Microsoft.FSharp.NativeInterop の手直しだけ
他の場所も、同様に機械的な手直しで潰せるなら、方法わかる人、教えてくれたら大感謝!
--
エラー FS0039: 値またはコンストラクター 'Ok' が定義されていません
エラー FS0039: 値またはコンストラクター 'Error' が定義されていません
エラー FS0039: パターン識別子 'Ok' が定義されていません
エラー FS0039: 値、コンストラクター、名前空間、または型 'defaultValue' が定義されていません
エラー FS0039: 値、コンストラクター、名前空間、または型 'contains' が定義されていません
93デフォルトの名無しさん
2021/04/14(水) 23:25:34.73ID:lr6/bOW3 そこら辺4になって追加されたりしたやつだろ
エラーになってるところ変えるなり同じ挙動するもの定義したりすれば良いのでは
エラーになってるところ変えるなり同じ挙動するもの定義したりすれば良いのでは
2021/04/15(木) 08:35:42.95ID:T0uGWzJS
うん、そこまでは想像ついてる>4系で追加
なんで、その置き換えとか、言語知識なしでも機械的にA→B的置換とかでできないもんか? という相談
なんで、その置き換えとか、言語知識なしでも機械的にA→B的置換とかでできないもんか? という相談
95デフォルトの名無しさん
2021/04/15(木) 11:50:46.24ID:MvsdeY6Q 率直に無理じゃね?とは思うけど教えてエロい人
96デフォルトの名無しさん
2021/04/15(木) 14:55:21.89ID:Ajqhz/yy 本来の目的をはっきり汁
97デフォルトの名無しさん
2021/04/15(木) 17:27:52.85ID:ZJJpe5u8 追加されたものはリフレクションなりぶん回せば取れるだろうけど、中身は自分で実装しなきゃだろうし。
Fosrynとか使って中身も持ってくるかソース直接見るか
Fosrynとか使って中身も持ってくるかソース直接見るか
98デフォルトの名無しさん
2021/09/24(金) 05:39:01.80ID:Zy9h69w8 Cにとってのトライトーン
極めて不協和音である
極めて不協和音である
99デフォルトの名無しさん
2021/09/26(日) 10:00:16.57ID:oW0BMi/Z RustよりもF#のほうが高速らしいね。
100デフォルトの名無しさん
2021/09/26(日) 11:01:27.10ID:YikVAXY0 いや流石にそれはないだろw
原理的に無理では
イミュータブルでものによっては早くなるパターンがあるとかならまだわかるけど
原理的に無理では
イミュータブルでものによっては早くなるパターンがあるとかならまだわかるけど
101デフォルトの名無しさん
2021/11/16(火) 08:32:41.06ID:OAnBbSI0 またまけた
意外と知らない「国民1人あたりのCO2排出量」 1位はサウジ、5位は韓国、日本は何位?
https://news.yahoo.co.jp/articles/7bb34c2df73df99608a785882a612ff49ede5ec1
意外と知らない「国民1人あたりのCO2排出量」 1位はサウジ、5位は韓国、日本は何位?
https://news.yahoo.co.jp/articles/7bb34c2df73df99608a785882a612ff49ede5ec1
102デフォルトの名無しさん
2021/11/16(火) 08:33:03.57ID:OAnBbSI0 誤爆 スマホ
103デフォルトの名無しさん
2022/01/25(火) 11:52:31.80ID:GfuWsBWm まだ実用的なもの作ってないが
MSとは思えない程のエレガンス、ML系の正統な後継者だわ
MSとは思えない程のエレガンス、ML系の正統な後継者だわ
104デフォルトの名無しさん
2022/03/17(木) 01:30:45.63ID:MVQpL6JJ 兄弟国 といえば どこ?
しかし似てんな やることも言うことも
ロシア語表記の袋入り注射器、山形の海岸にも漂着…砂浜数百メートルに散在
https://www.yomiuri.co.jp/national/20220315-OYT1T50098/#:~:text=数百メートルに散在,-2022/03/16&text=山形県庄内総合支庁,いるが、県内では初めて。
しかし似てんな やることも言うことも
ロシア語表記の袋入り注射器、山形の海岸にも漂着…砂浜数百メートルに散在
https://www.yomiuri.co.jp/national/20220315-OYT1T50098/#:~:text=数百メートルに散在,-2022/03/16&text=山形県庄内総合支庁,いるが、県内では初めて。
105デフォルトの名無しさん
2022/05/02(月) 21:07:24.60ID:SiE8sOFg き・も・ち・わ・る
106デフォルトの名無しさん
2022/05/11(水) 19:00:03.29ID:421S2oIL ocamlをWindowsで使うのが辛いので、ありがたい。
107デフォルトの名無しさん
2022/05/11(水) 20:00:16.28ID:2rkQGcHe vNextってもう来たんだっけ?
108デフォルトの名無しさん
2022/08/28(日) 08:35:00.65ID:uKar1hpM 勉強してアプリ一つ作ってみたけど結局C#でいいやってのが感想だった
109デフォルトの名無しさん
2022/08/28(日) 20:37:37.60ID:IC5bQQys まあそう思うならそれでいいんじゃね?
ワイは使えるならF#のほうが遥かにマシだけど
ワイは使えるならF#のほうが遥かにマシだけど
110デフォルトの名無しさん
2022/08/28(日) 20:48:23.49ID:DhGNghcs そう思わない人が多いからこういう状況なわけで
111デフォルトの名無しさん
2022/08/28(日) 21:44:52.14ID:IC5bQQys まあF#らしい使い方しなければその恩恵は得られないんだから仕方はないだろ
テンプレの整備とかもアレだし
テンプレの整備とかもアレだし
112デフォルトの名無しさん
2022/08/28(日) 22:13:04.30ID:iJSRjwGP F#らしい使い方をした上でC#の圧勝だった
113デフォルトの名無しさん
2022/08/29(月) 08:34:52.52ID:XHdEZJlH デフォルトイミュータブルにならないしパターンマッチもよく分からん記法だし末尾最適化もないしunionがやっと来るのか来ないのかだし、何をもって圧勝と言ってるのか分からん
マジでなんで圧勝なの?
マジでなんで圧勝なの?
114デフォルトの名無しさん
2022/08/29(月) 09:02:07.01ID:5dAad4gs 生産性
115デフォルトの名無しさん
2022/08/29(月) 10:28:31.35ID:z6rvOrCE ワイはF#の方が良い(イミュータブル、REPL、簡潔な構文・型定義など)けど、まあお前が思うならそうなんだろうとしか
116デフォルトの名無しさん
2022/08/29(月) 10:56:58.78ID:VGGQRoto F#の方が良いと思う人が多ければこんな状況にはなってないよねとしか
俺はF#が良いと聞いたから勉強してアプリ1つ作り上げてやっぱC#だわと思った両方使える人なんだわ
俺はF#が良いと聞いたから勉強してアプリ1つ作り上げてやっぱC#だわと思った両方使える人なんだわ
117デフォルトの名無しさん
2022/08/29(月) 10:59:51.89ID:VGGQRoto C#でもイミュータブルやREPLは使えるしC#の方が簡潔に書けることも多いのでお前F#しか知らんだろとしか思わん
118デフォルトの名無しさん
2022/08/29(月) 16:51:29.00ID:Pfprq7BC とりあえず言語の良し悪しと主流になるかは一致しねーよ
js知らねーのかアホ
部分的にC#の方が簡潔にできるところはあるが全体通してコード量が短くなる事はねーよ
とりあえずお前がろくにF#知らない低脳チンカスってのはわかったからもういいよ
js知らねーのかアホ
部分的にC#の方が簡潔にできるところはあるが全体通してコード量が短くなる事はねーよ
とりあえずお前がろくにF#知らない低脳チンカスってのはわかったからもういいよ
119デフォルトの名無しさん
2022/08/29(月) 16:59:08.54ID:Pfprq7BC まあ最近はC#触るんでもUnityがメインなんで新しいバージョンの記法は追ってないからその辺で進化してたならすまんけど
コンストラクタで渡したものメンバーに代入とかしないで使えるようにとかもうなった?union来た?
コンストラクタで渡したものメンバーに代入とかしないで使えるようにとかもうなった?union来た?
120デフォルトの名無しさん
2022/08/29(月) 17:30:14.60ID:P78cDJnu 何も知らなくて草
121デフォルトの名無しさん
2022/09/04(日) 08:32:04.49ID:gz8Ny9ff F#は進化の速度が遅いしメインストリームから取り残されてるのが難点
結局C#に乗り換えなきゃいけなくなる未来が予測できるのがいや
未来というか現在のBlazorどうすんのよ
Boleroじゃ代わりになんねんだよ
結局C#に乗り換えなきゃいけなくなる未来が予測できるのがいや
未来というか現在のBlazorどうすんのよ
Boleroじゃ代わりになんねんだよ
122デフォルトの名無しさん
2022/09/04(日) 08:35:39.92ID:gz8Ny9ff123デフォルトの名無しさん
2022/09/04(日) 08:36:22.42ID:gz8Ny9ff 予測変換でunitになったけどunionのことね
124デフォルトの名無しさん
2022/09/04(日) 09:53:55.58ID:W7eXpTBn >>121
まあそこは分かる
ライブラリーとして使う分には使えなくなる事はないのかなとは思うけれど.NET Nativeみたいにビルドから対応してないみたいのが出てくるとあれ
そこはCILとして対応し続けてほしい所だがの
まあそこは分かる
ライブラリーとして使う分には使えなくなる事はないのかなとは思うけれど.NET Nativeみたいにビルドから対応してないみたいのが出てくるとあれ
そこはCILとして対応し続けてほしい所だがの
125デフォルトの名無しさん
2022/09/04(日) 10:16:03.59ID:RQxkFcRF 正直 D より F# が永息するとは思わなかった
126デフォルトの名無しさん
2022/09/07(水) 11:36:01.66ID:AY0Q59m9 >>124
F#のアセンブリは.NETと完全な互換性はないからそのうち使えなくなることはあり得る
F#のアセンブリは.NETと完全な互換性はないからそのうち使えなくなることはあり得る
127デフォルトの名無しさん
2022/09/07(水) 12:07:12.13ID:TVqoBGD1 完全互換じゃないってどういう話?
CILから外れてたらそも動かんやろ?
CILから外れてたらそも動かんやろ?
128デフォルトの名無しさん
2022/09/07(水) 12:14:01.18ID:AY0Q59m9 >>127
F#の関数はC#から使えないこともあるって知らないか?
F#の関数はC#から使えないこともあるって知らないか?
129デフォルトの名無しさん
2022/09/07(水) 15:52:29.80ID:fPcvQ9Ha それはC#がCILを満たしていてもなんでも呼べるわけではないって話じゃないの?
C#からのF#の呼び出し、やったの前だし呼びやすい形に調整してたから全部がどうとかは知らん。
C#からのF#の呼び出し、やったの前だし呼びやすい形に調整してたから全部がどうとかは知らん。
130デフォルトの名無しさん
2022/09/07(水) 15:53:05.62ID:fPcvQ9Ha とりあえず具体的にこの辺の項目とか上げてくれ。完全性求められても知らん
131デフォルトの名無しさん
2022/09/07(水) 15:54:26.49ID:nM+jMFuw >>129
VBからも呼べないんだわ
VBからも呼べないんだわ
132デフォルトの名無しさん
2022/09/07(水) 15:55:02.49ID:nM+jMFuw 当然IronPythonからもな
133デフォルトの名無しさん
2022/09/07(水) 15:57:55.34ID:nM+jMFuw CILがどうとかじゃなくF#の関数はF#が消えたら呼べなくなるからdllだけ残っても何の役にも立たんよってこと
134デフォルトの名無しさん
2022/09/07(水) 17:41:01.64ID:iZdF3GMM internalじゃないやつは静的クラスのメソッドとして呼べるだろ?
135デフォルトの名無しさん
2022/09/07(水) 17:44:23.79ID:iZdF3GMM その辺のF#だけからしか呼べない形態、どれがあったのか忘れた(というかあまり問題にしてなかった)けど、他から呼べるように公開したいものはそう出来て、それはCILにのっとってるんだから>>126はちょと違うんじゃ?と思った次第
136デフォルトの名無しさん
2022/09/09(金) 09:23:25.38ID:v5NOhSMN 流行らないなあ、キレイなML+標準ライブライブ超充実の、歪なようで噛み合う組み合わせがめっちゃ面白いんだけど
コミュニティには参加してないけど、むしろ面白さを重んじる俺みたいなアマチュア好みだからプロに疎まれてる感とかあるのかなって
コミュニティには参加してないけど、むしろ面白さを重んじる俺みたいなアマチュア好みだからプロに疎まれてる感とかあるのかなって
137デフォルトの名無しさん
2022/09/09(金) 09:42:35.61ID:JNXuk8tN 海外とかでメイン言語として採用してる会社とかもあるしプロだから、とかは別にないでしょ
ただやはりいつまであるのかってのは客からも上がってくるからそういうのを忌避したいとことか別にC#でいいんじゃ?って思うところはあえて採用しようとはしない、って感じじゃ
自分は生産性上がっていいと思うけどね
ただやはりいつまであるのかってのは客からも上がってくるからそういうのを忌避したいとことか別にC#でいいんじゃ?って思うところはあえて採用しようとはしない、って感じじゃ
自分は生産性上がっていいと思うけどね
138デフォルトの名無しさん
2022/09/09(金) 12:00:31.47ID:UNSkh5ZW vbがどうなったか覚えてるだろ?
あのマイクロソフトの代名詞にもなったvbが切られるんだからな
C#で十分な生産性が確保できる以上、五十歩百歩のメリットしか出せない割にデメリットのでかい別言語は要らんのよ
ほとんどスタッフの趣味で続いてるようなもん
あのマイクロソフトの代名詞にもなったvbが切られるんだからな
C#で十分な生産性が確保できる以上、五十歩百歩のメリットしか出せない割にデメリットのでかい別言語は要らんのよ
ほとんどスタッフの趣味で続いてるようなもん
139デフォルトの名無しさん
2022/09/09(金) 13:05:55.11ID:JNXuk8tN うんだから、お前がロクなメリットを引き出せてない話はわかったからそれはどうでもいいです
140デフォルトの名無しさん
2022/09/09(金) 13:31:54.27ID:UNSkh5ZW 引き出すも何もunionくらいだろ
些細なことよ
些細なことよ
141デフォルトの名無しさん
2022/09/10(土) 18:54:08.21ID:Qyx+mFnV C#のUnionはC#10に実装の話も出てたけど11にも間に合わなかったな
型制約とenumで似たようなことができるとは言えあればあったで便利だと思うんだが
型制約とenumで似たようなことができるとは言えあればあったで便利だと思うんだが
142デフォルトの名無しさん
2022/09/11(日) 01:28:49.63ID:bYqWwakP QiitaのF#を知ってほしい人もlinuxだし
M.Hiroi氏もWSLのUbuntuでF#入門やってた
windowsのVisualStudioじゃなくて
わざわざ仮想マシンやWSLのlinuxでやるのが主流なのかね
M.Hiroi氏もWSLのUbuntuでF#入門やってた
windowsのVisualStudioじゃなくて
わざわざ仮想マシンやWSLのlinuxでやるのが主流なのかね
143デフォルトの名無しさん
2022/09/11(日) 13:02:27.33ID:ouHf9wOU C#から呼び出せるとか.netライブラリ使い放題とかは正直微妙に終わったと思う
その代わりUnix系言語の1つとして認められるようになった
この板はwindows系の言語は無視される傾向にあるのでそれはよいことだ
俺みたいにwindowsのCUIでしか使ってないごく少数派からみれば微妙ではあるが
dotnetになってからコマンドラインだけでやるのはもうしんどいというか無理があるね
設定をxmlで書かないといかんし調べてもよくわからんかった
fscとfciでがんばり続けるほどのレガシーもないからいいけど
その代わりUnix系言語の1つとして認められるようになった
この板はwindows系の言語は無視される傾向にあるのでそれはよいことだ
俺みたいにwindowsのCUIでしか使ってないごく少数派からみれば微妙ではあるが
dotnetになってからコマンドラインだけでやるのはもうしんどいというか無理があるね
設定をxmlで書かないといかんし調べてもよくわからんかった
fscとfciでがんばり続けるほどのレガシーもないからいいけど
144デフォルトの名無しさん
2022/10/16(日) 18:17:06.10ID:ey6gZIQ/ Fableやろうとしたけど環境構築で死んだわ
もうちょっと情報が充実してくれると助かるんだけどねえ
もうちょっと情報が充実してくれると助かるんだけどねえ
145デフォルトの名無しさん
2022/10/19(水) 08:16:23.60ID:14kChQ3G >>142
winget install dotnetなんとかsdkのコマンド一発で環境構築終わらなかったっけ
wslは知らないけど、pc向けlinuxならwingetの代わりにaptとか別のパッケマネで挿げ替えれば通った記憶があるので、linux/macOSなど若干アウェーな環境でも特に障壁はないはず
好みの問題かと
winget install dotnetなんとかsdkのコマンド一発で環境構築終わらなかったっけ
wslは知らないけど、pc向けlinuxならwingetの代わりにaptとか別のパッケマネで挿げ替えれば通った記憶があるので、linux/macOSなど若干アウェーな環境でも特に障壁はないはず
好みの問題かと
146デフォルトの名無しさん
2022/10/19(水) 09:37:27.61ID:qMrE132j >>144
Fableで何をしようとしているかにもよるけど、SAFE stackとかは?
Fableで何をしようとしているかにもよるけど、SAFE stackとかは?
147デフォルトの名無しさん
2022/10/23(日) 07:42:55.15ID:Ok80kDIa >>146
フロントエンドだけで使う想定だったんで、SAFEだとちょっと大掛かりかなと思ってた
ちなみに原因はFableじゃなくnode.jsの依存関係にあった
npm installした後にnpm audit fixコマンドで脆弱性潰せみたいなメッセージが出るけど、
このコマンドを実行したせいで依存関係がめちゃくちゃになったらしい
無視したら普通にnpm startでコンパイル成功した
フロントエンドだけで使う想定だったんで、SAFEだとちょっと大掛かりかなと思ってた
ちなみに原因はFableじゃなくnode.jsの依存関係にあった
npm installした後にnpm audit fixコマンドで脆弱性潰せみたいなメッセージが出るけど、
このコマンドを実行したせいで依存関係がめちゃくちゃになったらしい
無視したら普通にnpm startでコンパイル成功した
148デフォルトの名無しさん
2022/10/24(月) 00:50:34.52ID:8Lz7V8Tn149デフォルトの名無しさん
2022/10/24(月) 10:05:32.79ID:aCYxRFeC Fableも最近はElmぽくしてるやつが主流?
150デフォルトの名無しさん
2022/10/24(月) 13:17:16.08ID:CSVgb4N8 YouTube で有名な雑食系エンジニア・KENTA の動画がある
EC2はもうオワコンです
www.youtube.com/watch?v=G_ILES8fmf8
もう、Windows の実行環境がない。
もう、OS, AWS EC2 も使わない。管理・構築しない
すべてコンテナ・Docker へ移行した。
使うのは、AWS Lambda, Fargate, Kubernetes
DockerはLinuxだけの技術で、他のOSでは使えない。
Microsoft も、Linux財団に加入して開発している
EC2はもうオワコンです
www.youtube.com/watch?v=G_ILES8fmf8
もう、Windows の実行環境がない。
もう、OS, AWS EC2 も使わない。管理・構築しない
すべてコンテナ・Docker へ移行した。
使うのは、AWS Lambda, Fargate, Kubernetes
DockerはLinuxだけの技術で、他のOSでは使えない。
Microsoft も、Linux財団に加入して開発している
151デフォルトの名無しさん
2022/10/24(月) 17:59:04.00ID:8Lz7V8Tn >>149
Elmishも有れば、Felizスタイルっていう素のReactっぽい書き方も有ります。
この辺は好みで選べる感じみたい。
自分はElmishに慣れてしまったのでFelizスタイルはよく知らないっす。
Elmishも有れば、Felizスタイルっていう素のReactっぽい書き方も有ります。
この辺は好みで選べる感じみたい。
自分はElmishに慣れてしまったのでFelizスタイルはよく知らないっす。
152デフォルトの名無しさん
2022/10/24(月) 18:04:04.32ID:aCYxRFeC Felizは初めて聞いた。フロント絶対触らないぞ、と頑張ってきたけどぼちぼちやらないといけなくなってきたからちょっと見てみるわー
jsでやるよりやっぱり楽かなー
jsでやるよりやっぱり楽かなー
153デフォルトの名無しさん
2022/11/02(水) 07:52:27.54ID:lcK3s+C7 F#についてはまったくの初心者です
fortran pythonをうごかしていました
質問ですがf#でコマンドラインで実行ファイル作成法がわかりません
c#ですとコンソールで
csc file.cs と打って
実行すれば実行ファイルを作成できます
F#にもfsc.というコマンドがありますがエラーになります
dotnetをつけてもだめでした
visual studioでbuildをすればいいのかもしれませんが
visual studio不慣れで使いたくありません
f#ではコマンドラインで実行ファイルをつくることはできないのでしょうか
できないならf#はあきらめc#を勉強しようと思います
ご教示よろしくお願いします
fortran pythonをうごかしていました
質問ですがf#でコマンドラインで実行ファイル作成法がわかりません
c#ですとコンソールで
csc file.cs と打って
実行すれば実行ファイルを作成できます
F#にもfsc.というコマンドがありますがエラーになります
dotnetをつけてもだめでした
visual studioでbuildをすればいいのかもしれませんが
visual studio不慣れで使いたくありません
f#ではコマンドラインで実行ファイルをつくることはできないのでしょうか
できないならf#はあきらめc#を勉強しようと思います
ご教示よろしくお願いします
154デフォルトの名無しさん
2022/11/02(水) 10:18:21.97ID:VBEVpYP2 fsiでスクリプト実行じゃなくてコンパイルしたいなら、面倒だけどdotnet new --lang指定でプロジェクト作ってdotnet build
155デフォルトの名無しさん
2022/11/02(水) 11:13:56.52ID:lcK3s+C7 >>154
ありがとうございます
以下を実行しました
program.fsを作成
dotnet new console -lang F# -o program -f net6.0
cd program
dotnet build
cd bin/bpc/debug/net6.0
program.exe
実行ファイルはできましたが
ソースひとつごとにプロジェクトを作成して
実行ファイルはソースと別のディレクトリにできる
ということになりますね
fsiを動かすにしても1ソース1プロジェクトのようですし
これで作業は効率的なんでしょうか
visual studioを使えっていうことでしょうかね
これまで
editorでrソース作って コンパイルして実行という手順に慣れている者にとっては面倒ですね
fsc.exeはいつ使うんでしょうかね
やはり C#かな
ありがとうございます
以下を実行しました
program.fsを作成
dotnet new console -lang F# -o program -f net6.0
cd program
dotnet build
cd bin/bpc/debug/net6.0
program.exe
実行ファイルはできましたが
ソースひとつごとにプロジェクトを作成して
実行ファイルはソースと別のディレクトリにできる
ということになりますね
fsiを動かすにしても1ソース1プロジェクトのようですし
これで作業は効率的なんでしょうか
visual studioを使えっていうことでしょうかね
これまで
editorでrソース作って コンパイルして実行という手順に慣れている者にとっては面倒ですね
fsc.exeはいつ使うんでしょうかね
やはり C#かな
156デフォルトの名無しさん
2022/11/02(水) 13:49:39.71ID:gl9lvyny build時のデバッグ情報にfscの呼び出しあるだろ?真似ればいいんじゃね
自動で適切な引数渡してくれるのに、わざわざ自分でコンパイラオプションや必要なアセンブリ集める方がよっぽど面倒だと思うが
自動で適切な引数渡してくれるのに、わざわざ自分でコンパイラオプションや必要なアセンブリ集める方がよっぽど面倒だと思うが
157デフォルトの名無しさん
2022/11/02(水) 14:01:10.82ID:gl9lvyny そもそも初心者が実行時コンパイルの僅かなオーバーヘッドを気にするべきじゃないと思うんだが
fsiスクリプトはほとんどの言語より高速だし、fscを触るのは本当にパフォーマンスに困ってからでいいかと
fsiスクリプトはほとんどの言語より高速だし、fscを触るのは本当にパフォーマンスに困ってからでいいかと
158デフォルトの名無しさん
2022/11/02(水) 15:04:42.18ID:VBEVpYP2 コンパイラの仕組みに興味があるなら
https://github.com/dotnet/fsharp/blob/main/docs/overview.md
コマンドラインのオプション解析、parsing/lexing、参照解決、型チェック、最適化、バイナリ生成etc
全てfsharpで書かれてるので勉強にもなるし、ぶっちゃけマニュアル読むより速い
https://github.com/dotnet/fsharp/blob/main/docs/overview.md
コマンドラインのオプション解析、parsing/lexing、参照解決、型チェック、最適化、バイナリ生成etc
全てfsharpで書かれてるので勉強にもなるし、ぶっちゃけマニュアル読むより速い
159デフォルトの名無しさん
2022/11/02(水) 16:40:26.11ID:RxFRhVgo160デフォルトの名無しさん
2022/11/02(水) 17:11:58.19ID:Cz0q4/YM >>155
こいつみたいに勘違いして文句つける奴ほんまうざい
こいつみたいに勘違いして文句つける奴ほんまうざい
161デフォルトの名無しさん
2022/11/02(水) 17:25:00.04ID:lcK3s+C7 >>158
ありがとうございます。
fsc.exeもfsharp(?)で書かれたテキストファイルなんですね
fsc.fsを155と同じ手順でコンパイルしてみました
fsc.exeはできましたが、
fsc program.fsを動かしてもprogram.exeはできません
結果を表示しますのでfsiになっているようです
ソースを書き換えればいいのでしょうが、私には無理です
fsharp 勉強してみます
ありがとうございます。
fsc.exeもfsharp(?)で書かれたテキストファイルなんですね
fsc.fsを155と同じ手順でコンパイルしてみました
fsc.exeはできましたが、
fsc program.fsを動かしてもprogram.exeはできません
結果を表示しますのでfsiになっているようです
ソースを書き換えればいいのでしょうが、私には無理です
fsharp 勉強してみます
162デフォルトの名無しさん
2022/11/02(水) 18:58:19.36ID:lcK3s+C7163デフォルトの名無しさん
2022/11/02(水) 19:28:08.88ID:lcK3s+C7 >>163
buildしなおしましたら エラー100個でました
buildしなおしましたら エラー100個でました
164デフォルトの名無しさん
2022/11/02(水) 20:03:48.67ID:lcK3s+C7 どうでもいい話でおさわがせしています。
原因わかりました 対処法わかりませんが
dotnet new console -lang F# -o program -f net6.0
でプロジェクトをつくると
program.fsは hello worldを表示するfsをつくります
ソースをかえてbuildしたつもりでしたが、
常にprogram.fsをbuildしていました
ですので何をしてもhello wolrdを表示していました。
おさわがせしましてもうしわけありません。
155の流れのバッチファイルをつくればいいのかと考えています
原因わかりました 対処法わかりませんが
dotnet new console -lang F# -o program -f net6.0
でプロジェクトをつくると
program.fsは hello worldを表示するfsをつくります
ソースをかえてbuildしたつもりでしたが、
常にprogram.fsをbuildしていました
ですので何をしてもhello wolrdを表示していました。
おさわがせしましてもうしわけありません。
155の流れのバッチファイルをつくればいいのかと考えています
165デフォルトの名無しさん
2022/11/02(水) 21:08:41.81ID:VBEVpYP2 >>161
ごめんよくわからない、>>158のfscコンパイラのソースをコンパイルしたの?
fsc(.exe, dll etc)がそれだから持ってるなら必要ないよ
引数に何を与えるべきかドキュメント読んで分からないなら、>>158のコードは参考になるけど
dotnetのプロジェクト管理が嫌なだけなら、>>156の出力をコピペ&好きに改竄して、ps1でもbatでもshでもnmakeでもmakeでも好きな方法で呼べばいい
dotnet build -v d (-verbosity detaildの略)ね
ホスト、ターゲット、動的/静的リンク諸々全て環境依存だけど
dotnet path/to/fsc.dll -o:path/to/fsharp.dll \
-g --debug:portable --noframework \
--define:TRACE -define:NET6_0 \
...
-optimize- --tailcalls-
-r:path/to/dlls \
...
--target:exe --nocopyfsharpcore ... Program.fs
みたいなコマンドを発行してはず
ごめんよくわからない、>>158のfscコンパイラのソースをコンパイルしたの?
fsc(.exe, dll etc)がそれだから持ってるなら必要ないよ
引数に何を与えるべきかドキュメント読んで分からないなら、>>158のコードは参考になるけど
dotnetのプロジェクト管理が嫌なだけなら、>>156の出力をコピペ&好きに改竄して、ps1でもbatでもshでもnmakeでもmakeでも好きな方法で呼べばいい
dotnet build -v d (-verbosity detaildの略)ね
ホスト、ターゲット、動的/静的リンク諸々全て環境依存だけど
dotnet path/to/fsc.dll -o:path/to/fsharp.dll \
-g --debug:portable --noframework \
--define:TRACE -define:NET6_0 \
...
-optimize- --tailcalls-
-r:path/to/dlls \
...
--target:exe --nocopyfsharpcore ... Program.fs
みたいなコマンドを発行してはず
166デフォルトの名無しさん
2022/11/02(水) 21:15:42.03ID:VBEVpYP2 というかこんな些末な事を気にする前に、とにかくfsiを立ち上げて公式チュートリアルでもこなせば
167デフォルトの名無しさん
2022/11/02(水) 21:24:08.66ID:ahOvjMWx 環境構築が趣味なんだろ
168デフォルトの名無しさん
2022/11/02(水) 22:18:02.52ID:Dj/Cqb/4 ビルドできてREPLも使えてるのに何が問題なんだ?
自分好みのビルドスクリプトを書きたいようだけど、使ってない言語のコンパイラオプションを適切に選べるとでも思ってるのか
そんなに俺々ビルドスクリプトを書きたければ、F#で書けばいいのに
batなんかよりずっと楽に書けるぞ
自分好みのビルドスクリプトを書きたいようだけど、使ってない言語のコンパイラオプションを適切に選べるとでも思ってるのか
そんなに俺々ビルドスクリプトを書きたければ、F#で書けばいいのに
batなんかよりずっと楽に書けるぞ
169デフォルトの名無しさん
2022/11/03(木) 07:54:33.74ID:diaW/wXZ もう一度 fsc.exeを探しましたら 見つかりました
おそらく visual studioをインストールしたときにできたものと思います
場所は
c:\program file (x86)\Microsoft Sdks\F#\4.0\Framework\v4.0
コマンドプロンプト画面で
fsc program.fsxと打つと
program.exeができました
fsi program.fsx
でhello world
も表示できました
editor+コンソールでの作業に慣れていますので
これで心置きなくF#を勉強できます
おさわがせしましてもうしわけありませんでした
おそらく visual studioをインストールしたときにできたものと思います
場所は
c:\program file (x86)\Microsoft Sdks\F#\4.0\Framework\v4.0
コマンドプロンプト画面で
fsc program.fsxと打つと
program.exeができました
fsi program.fsx
でhello world
も表示できました
editor+コンソールでの作業に慣れていますので
これで心置きなくF#を勉強できます
おさわがせしましてもうしわけありませんでした
170デフォルトの名無しさん
2022/11/03(木) 07:59:03.87ID:sWIbv+Sc 何でわざわざexeにしてるのか意味わからん
評価したいとこ選択して評価すればいいだろ
評価したいとこ選択して評価すればいいだろ
171デフォルトの名無しさん
2022/11/03(木) 08:26:48.53ID:diaW/wXZ FSI.exeが動きますので
評価はfsiでもできます
ソース作ってfsiを動かすだけですので
私的にはテストを楽にできます
複数の機器でテストしたいこともありexeファイルも必要となっています。
評価はfsiでもできます
ソース作ってfsiを動かすだけですので
私的にはテストを楽にできます
複数の機器でテストしたいこともありexeファイルも必要となっています。
172デフォルトの名無しさん
2022/11/03(木) 15:14:32.39ID:diaW/wXZ visual studioをインストールしなくとも
Visual F# Tools 4.0 RTM
https://www.microsoft.com/en-us/download/details.aspx?id=48179
をダウンロード、インストールすれば
f#のコンパイル環境をつくれました。
VS2022はwindows32ビットに対応していなかったのですが、これでF#をテストできます
(dotnetを使えば動くようですが)
Visual F# Tools 4.0 RTM
https://www.microsoft.com/en-us/download/details.aspx?id=48179
をダウンロード、インストールすれば
f#のコンパイル環境をつくれました。
VS2022はwindows32ビットに対応していなかったのですが、これでF#をテストできます
(dotnetを使えば動くようですが)
レスを投稿する
ニュース
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 ★2 [Hitzeschleier★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★2 [ぐれ★]
- 【中国局長】両国関係に「深刻な影響」 首相発言の撤回要求 [蚤の市★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★3 [BFU★]
- 【卓球】早田ひな、「総額100万スられた」「ずっと憧れていたスペインとイタリア…」ヨーロッパ旅行で悲劇 スリ被害を告白 [muffin★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 産経新聞「高市早苗の答弁さぁ……思慮が足りてなくね?官僚と詰めずに思いつきで話しているでしょ」 [175344491]
- 【実況】博衣こよりのえちえち歌枠🧪
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 【雑談】暇人集会所part18
- 高市早苗「支持者の理解を得られないので台湾発言を撤回できない」 [931948549]
- 外務省局長、よくわからないまま帰国へ [834922174]
