2023年09月21日

一日一項目 goto 文  I go to school. その gotoじゃねーーーぇ

c/c++ には goto 文がある。半世紀ぐらい昔、gotoは使うな、スパゲッチーーープログラムは書くな、と指導された連中は多かろう。知らんけど。

今もある。使える。多用するなとエライ人たちは言う。
Google Bard先生も次のように注意する。
image

使えるが慎重にね。
ではPythonではどうか? 
image

Pythonには goto 文はないというとる。便利なようで便利でもなく、害が大きいのでPython創業家は取り入れなかったんだな。うむうむ。

では、Go言語には?
image

c/c++と同じような。これは慎重にね。なるべく使わないでね、という趣旨の回答があった。が、多重ループから抜けたり、エラーが飽きた場合に一箇所に飛ぶとかの利用は便利そうだがなあ。あとで試して見ようっと。

Julia言語では?
image

ある。注意はc/c++, Goと同じように慎重に使え、だ。つーか、代替機能があるからそれ使え、だ。

まあしかし、機能としてあるなら使ってみようではないか。でもね、あまり推奨しないものなのでして、だったらなくしたらいいじゃんって思う次第であるのだけれども なくせない理由があるのかもねえ。
clangには goto があるらしいぞ。 よーし、ワイも I go to the GOTO world!!  ワタシは五島世界に行く!!   どーや。なにが? 

ワタクシが私淑するBard先生に訊いたぞの
image

いや、BASICに goto はあると思うのですけど(´・ω・`)
Pythonに goto があるってのは Python 2系のジョーク機能だろ(笑)
   Go言語には goto あるだすよ
なんかBard先生、間違い多いなあ・・・・・ もう私淑するのやめようかな。。。
私淑の使い方 あってっか?   知らん。

てなわけで goto で検索するといろいろとヒットして先人・賢人が検討した痕跡が見いだせます。
ちなみにBingチャットの回答を次に示す。
image

for文を使わずに Label, goto, if で書いてやる!! なんちゅーてね、

古きを知り新しきを知る また楽しからずや ==== それだな。テキトーな。

 

蛇足 すなわち蛇の足 Julia言語では @label  hage  と  @goto hage のように @ を付けるらしい。つけないとエラーでたし。Bardの例題で。Juliaの @ って マクロなんだよな。詳しくは知らんけど。

てな感じ。

posted by toinohni at 08:23| 東京 ☁| Comment(0) | ソフト系雑学 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
コチラをクリックしてください