Rubyのコードを書いていて、ときどき indent mismatch のエラーになる
そういうときはどこでmismatchが発生しているのか探すのが大変
(一番最後のendでmismatchが検出されるけど、
それ以前のどこかにあることしかわからないから、
コードをすべて読み直すことになる.)
結局、インデントに意味を持たせなくても(現状でも)、
インデントが狂うと(そしてdo end がmismatchになると) syntax errorになるし、
インデントは正しく保つ必要がある.
(ので、人間の手間としては同じだし、
むしろmismatchをしっかり検出して将来のエラーを減らせるので、人間の手間は減る.)
(現状、indent の mismatch の場合は warning が出る. do end の数が mismatch だと当然ながら error.)
まあ、ただ、機能をあとからあれもこれも追加すると
手に負えなくなって言語が死んでしまう原因となる可能性はある.
endless method定義でさえ、少し中途半端には感じるし、
=で終わるmethodには使えないというのも一貫性に欠ける.
(後方互換性がなくなること、より正確には、syntaxが変わることは
スニペットをsyntax highlightしたいときに困りそう. ウェブサイト等で.)
end が省略できるメリットというのは実際、ごく小さいので、
それに比べるとリスクが大きいよなあ、と思う
あと、RubyはPythonよりも純粋なオブジェクト指向言語で、
method chainを多用するので、
end 省略のメリットはさらに小さい.
大きすぎるリスクを考えると、Rubyはこのままで、
将来、別の言語を作るときに採用、というのが妥当かな.
それに、根本問題として、本当に閉じカッコなしの方がよいのか、というところは
もう少し考えたい. Pythonを数年間使ってみてから結論を出そうと思う.
探検
Rubyに'end'って要らないよな
■ このスレッドは過去ログ倉庫に格納されています
78デフォルトの名無しさん
2021/08/27(金) 02:49:34.51ID:NGc2JSym■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか… [BFU★]
- 中国国営メディア「沖縄は日本ではない」… ★6 [BFU★]
- 政府、株式の配当など金融所得を高齢者の医療保険料や窓口負担に反映する方針を固めた [バイト歴50年★]
- 中国国営メディア「沖縄は日本ではない」…★7 [BFU★]
- バービー、 台湾有事の発言の波紋で「たまったもんじゃない」「高市さんに真意は聞きたい」「国民に向けて説明してほしい」 [muffin★]
- ナイツ塙が指摘のローソンコーヒーカップ、ロゴ「L」で誤解生みデザイン変更へ 在庫使い切る3か月後にリニューアル [muffin★]
- 日本政府「高市総理の発言は問題ないと伝え、中国総領事のSNS投稿は問題があると中国に伝えました😊」 [931948549]
- 高市早苗、岸田政権(当時)に「台湾有事は日本の有事か」という質問をしていた [175344491]
- 【悲報】高市早苗周辺「支持層が離れるので今更発言を撤回できない」 [935793931]
- 青椒肉絲、牛肉ではなく豚肉を使うのが本物だった
- 【悲報】中国→日本行きの航空チケット、高市有事の影響で50万人分がキャンセルされる [834922174]
- んなっしょい🍬禁止🈲のお🏡
