カテゴリー
パソコン2

F#関連、寄り道です。Google翻訳 VS (PCOT + DeepL)

翻訳する文章は、マイクロソフトのサイトからからのリンクです。また、PCOT+DeepLについては、元ネタリンク(すえまり)です。

最初はPCOT+DeepL側から、WindowsのOCRも使っている?

この時点で読み違いが有ると、次のステップで良いのか?そのまま間違っています。

OCRですので、読み違いが必ずあります。少しだけ訂正しました。すると翻訳も同時に変わるのは良いですが…。

上はGoogle翻訳です。こちらはテキストのコピーですので、読み違いはありません。

結果は、どっちもどっちですかね?もしかしたら小説は、PCOT+DeepLが勝ち。F#の解説文はGoogle翻訳の勝ち。

 

カテゴリー
パソコン2

マイナポータルAP反応しない?何故??

 マイナポータルAPはグーグルクロームへインストールです。メニューバーのマイナポータルAPが反応しません。仕方ないので、ねんきんネットへログインを知てみますが…。

赤線で括ったマイナポータルへ戻るが有りました。

ログイン選択。

  

自分の場合は、マイナンバーカードでログインします。

4桁の暗証番号を入れます。

ログイン中が表示されれば、成功です。ログアウトはメニューに有ったと思います。毎日使うものでないので、使い方を忘れます。(涙)

カテゴリー
天候

東北北部以外、梅雨明けか?暫定梅雨明けかも。

 今日東北南部が梅雨明けしたらしいということで、残るは東北北部の梅雨明けだけになりました。東北北部は岩手、秋田、青森でしょうから、岩手の最南端の一関でも、まだ明けてないんでしょう。

 手入れの行き届かない我家の庭に、素敵な訪問者がやってきました。

上は3枚目をトリミングしました。でも、毛布を着ているようで、暑苦しい。と思うのは、人間の勝手ですかね。(暑)

カテゴリー
F#

F#イジってました。moduleとは何でしょうか?

昨日悩みに悩んでやめてました。今朝やってみたら、なんてこと無くて動いてました。Module1のkasanを使います。

 Module1はファイル名Module1.fsの事ではないようです。module Module1のことのようです。importやrequireは無しでいいみたいです。その代わりファイル名とモジュール名を同じにしたほうが混乱しないように思います。但し、プロジェクトには両方のファイルを入れておきます。

入力を使ってみました。stdin.ReadLine() |> stringで文字列として、受け取るようです。

 [<EntryPoint>]を書く形式では、通常使う分にはmodule入らないと思いますが、使ってみました。begin、endを使ってみました。endはインデントされることに注意ですかね。上のkasanでは引数はxとyの2個。下のModule1.kasanではx、y、zの3個です。

moduleの疑問が消えたわけでは、無いですが、いくらかは、理解したかなあ?(font)

カテゴリー
F#

F#イジってみました。VSCodeでF#デバッグできるか?Windows10です。

QiitaにVSCodeでF#のデバッグする方法が載ってました。

デバッグコンソールに実行の様子が出てます。ターミナルからでも実行できます。ブレークポイントも置けました。

 上の図でprogramのとこ、net6.0で良いようですが、サイトでは違ってました。”<>”入らない。launch.jsonはマニュアルで追加しました。ファイルを追加したら中の内容は、サイトの通り。

setting.jsonはイジってません。

 task.jsonもサイトの通りで出来ました。結構手順をふまないと出来ないようですので、VS2022でやったほうが断然楽だと思います。Linuxとはホルダーとう違いが有ると思います。

カテゴリー
F#

F#イジってみました。Functionsその6。List.map

Google翻訳で訳しましたが、分かりづらいとこもあるようです。

 最後のevenNumberSquareだけ、ほんの少しだけ、付く加えました。もとの参考したコードでは”%d”で出力してましたが、どうやらListでは通用しないようです。削除したら、エラーは出ませんが、4項目以降は省略です。

”%A”指定で出力すると省略されません。しめしめ。(笑)

cametan_42さんのアドバイスではmatchがキーポイントということです。mapとかが関数型プログラミングでは必須の知識なんですね。Rubyでもcollectとか有ったのですが、多分F#のmapと同じだったと思いますが、使わなくてもなんとかなりましたが、関数型プログラミングでは、そうではなく必須のようです。違うかもしれませんけど(苦)

カテゴリー

かぼちゃとシモツケの花が咲きました。少し前です。

ミツバチが丁度、お仕事中でした。

かぼちゃの花の寿命は短いようです。一日かも。

地面を這わせないので、一蔓だけで、3個程度しかならないようです。

カテゴリー
F#

F#イジってみました。Functionsその5、高階関数

 高階関数の前の説明。だと思いますが、WriteLineが関数だと、関数が関数を呼んでるように見えますが、自分で作ったものでないので、文と見ると?単に関数が拘束された変数を呼んでるだけ、に見えます、またまたが、変数の拘束と関数の定義が、全く同じに見えます。

applyIt1などで関数を呼ぶ方法が、分からない。直接書いたほうが良いように思えてしまいます。疑問、なぜ?

追加)

カテゴリー
F#

F#イジってみました。Functionsその4。書き方2つのタイプ。

まずは通常使っていた方法。VSCodeでエラーなるので、VSに戻ってやってみた画面です。下の下の画面で0が無いためでした。

上の画面が、普通に使っていたVisual Studioでの画面。ThreeAdditionでxにfloatを付けたら、どの引数も通りました。

floatを取ったら、エラーです。関数の引数から、ThreeAdditionの引数の型を推測はしてくれないようです。

 もう一方の書き方は、上のようにopen System []を書く形式だと、moduleは要らないようです。こっちの方がプログラムみたいで良いですが。同じようなことが、Pythonでもありました。

カテゴリー
F#

F#イジってみました。VSCodeによる開発環境って?

参考にしたサイトはこちら。やはりマイクロソフトのサイトでは分からずです?。

 まだ途中ですが、多少分かってきました。上の参考にしたサイトでもちょっとだけ違ってました。open Systemや[]が無くて、printfn文だけでしたが、実行は右下のペイン、ターミナル(POWERSHELL)で行いますし、しかもdotnet run。コンパイルされているものの実行とは違うようです。

 ここで大きな疑問、前からありましたが、マイクロソフトのサイトでもありました、REPLを基本とした開発。REPL自体は少しはわかりますが、例えば1+2;;をやってみたところで、どうエディタへ反映させて、プログラミングを作り上げるのでしょうか?

 最近の言語では全てそうなっているようです。Scala,Kotlin,Python最後のF#。自分は最初の一行から、統合環境を使うので、これが理解できないんですよ。(笑)

追記)最後に重要なことを落としてました。mainの最後の0です。これが無いとprintfnに赤の波線が引かれて、いかにもprintfn文が間違っているように思いますが、違います。mainも関数、intを返す必要があるんですね。気付かなかった。(涙)これでUbuntuのVSCodeでも出来るかもしれません。がREPLでの開発ができるかは、また別の問題ですかね。

追記2)Ubuntuでやってみあたのですが…。

 実行した結果がどこにも見当たりません。エラーにはなりません。最初はprintfnの文だけ表示されました。open Systemや[<EntryPoint>]、0は追加しました。ネタ元サイトを更に読まないといけないようです。(哀)

 

inserted by FC2 system