新しいアカウントで始めました。

身の回りの出来事や写真が中心です。

Visual Basicに高階関数あるんですね。

2022-05-26 21:14:54 | C#、VBなど

Cametan_42さんがVisual Basic でも高階関数が使える記事を見つけてくれました。

少しだけ変えて、listとlist2を加算してみましたが、高階関数、ピンと来ないです。(笑)


コメント (4)    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« Cametan_42さんのブログから... | トップ | Pythonリスト内包記法をいじ... »
最新の画像もっと見る

4 コメント

コメント日が  古い順  |   新しい順
Unknown (cametan_42)
2022-05-26 22:45:29
うーん、マイクロソフトのドキュメントも分かりづらいなぁ・・・・・・(っつーか検索しづらい)。

ラムダ式 (Visual Basic):
https://docs.microsoft.com/ja-jp/dotnet/visual-basic/programming-guide/language-features/procedures/lambda-expressions

方法: ラムダ式を作成する (Visual Basic):
https://docs.microsoft.com/ja-jp/dotnet/visual-basic/programming-guide/language-features/procedures/how-to-create-a-lambda-expression

VBラムダ式 基本文法最速マスター @IT:
https://atmarkit.itmedia.co.jp/fdotnet/rapidmaster/rapidmaster_02/rapidmaster_02.html

とこの辺を参考に。

まぁ、applyとか、自作せなアカン、ってぇのなら旨味をあまり感じる事が出来ないかもしれませんね。
もっともLispで言うmapとか自作するのは良い練習になるとは思いますけれども。

あと、通常Visual Basicだと、高階関数代わりにデリゲートって機能を使うんですかね?よく分からんのですが。

デリゲート (Visual Basic):
https://docs.microsoft.com/ja-jp/dotnet/visual-basic/programming-guide/language-features/delegates/

Rosetta Codeではデリゲートを使った「高階関数っぽい」例がいくつか紹介されていました。

VB.net:
https://rosettacode.org/wiki/Higher-order_functions#Visual_Basic_.NET

とまぁ、参考までに。
返信する
cametan_42さん、コメント有難う御座いました (isam)
2022-05-27 22:58:27
 自分にとっての、壁を登るか?登らないか?難しい場面に遭遇してます。なんとなくわかった気になっても、忘れてしまうんですよ。
返信する
そうなんですか? (cametan_42)
2022-05-28 03:16:03
>  自分にとっての、壁を登るか?登らないか?難しい場面に遭遇してます。なんとなくわかった気になっても、忘れてしまうんですよ。

そうなんですか?

まぁ、こっちから見ると、やっぱ単にVisual Basicの機能が単に十全じゃない、ってだけに見えますがね。
要するにVisual Basicで書く、ってのが相当難しく見えます。

C++とかJavaとか、恐らくC#なんかもそうなんだけど、「元々そういう意図で設計されてない」のに、新しく関数型言語から機能を持ってきてると「合わない」んですよね(笑)。便利なんだけど、それを「使う」のが言語仕様上物凄くメンド臭くなってる。
やっぱ「後付の機能」ってのは単に「使いづらい」ってトコあるんじゃないのかしらん。
要するに、最初の設計の時点からその辺見据えてないと、単にイビツに「新機能が付け加えられた」ってだけになっちゃうと思います。
当然使うのは苦しいんですよ。

多分、Microsoft言語なら、F#を使った方がマシなんじゃないかしらん。

F#入門:
http://www.fsharpintro.net/

Microsoft言語の中ではC#やVBに比べると全然人気が無いですけど、これは「ホンモノ」です。OCamlと言う言語を基に作られています。

OCaml:
https://ja.wikipedia.org/wiki/OCaml

両者とも基本的なトコではほぼ互換のようです。

なお、お茶の水女子大学の先生が作った「プログラミングの基礎」って本があって(良書です)、

プログラミングの基礎:
http://pllab.is.ocha.ac.jp/~asai/book/Top.html

そのビデオ講座が無料で公開されています。

「プログラミングの基礎」を使った授業紹介:
http://pllab.is.ocha.ac.jp/~asai/book-mov/
返信する
cametan_42さん、コメント有難う御座いました (isam)
2022-05-28 07:05:55
 その通りなんでしょうね。Lisp系の言語は、なかなか馴染めませんが、タダで使えるマイクロソフトのF# ですか?
 Cametanさんが、本物というF#、触って見る価値はありそうです。
返信する

C#、VBなど」カテゴリの最新記事