TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼
表計算ソフトは人類の生産性を大きく下げている
C#だとそんなに重くなるもんなの?
s = "" + i;でintをStringに変換するのはなぜだめか
●●●●TCL/TKなら俺に聞け 4●●●●
簡単なプログラム言語って何?
プログラミングのお題スレ Part16
構造化プログラミングはまだ必要ではないのか?
ふらっと C#,C♯,C#(初心者用) Part141
【統計分析】機械学習・データマイニング20
C#, C♯, C#相談室 Part95
54 :
(>>49の続き)
二番目の要望は、「可変(mutable)な操作と不変(immutable)な操作の明確化」です
具体的には、Rubyにはオブジェクトの状態を破壊的に更新するメソッドであれば、
そのメソッド名の末尾に !(感嘆符) を付けようという弱いルールが昔から存在していました
(この末尾感嘆符ルールは、Lisp文化に由来すると思われます)
けれどもこのルールは一般にはほとんど普及していませんし、
残念なことに組み込みクラスですらルールが守られていないケースがあります
たとえば、Hashクラスには二つのハッシュを(破壊的に)結合する可変操作merge!と
破壊せずに結合するmergeがある一方で、merge!と同じ可変操作updateが存在します
これはRuby 1.8 -> 1.9 の時点でupdateを廃止するか、あるいはdeprecate(非推奨)を
判断して、リファレンスへ反映させるべきでした
組み込み/標準のクラスですら平気で逸脱しているのだから、ユーザが遵守する訳がありません
関数型プログラミング作法の基本は
「(破壊的代入を含む)副作用を避けた参照透明性のあるプログラミング」
であり、Rubyにおいては
「副作用を極力避けたり、参照透明性のある部分とない部分を意識的に使い分ける、
 あるいは副作用のあるコードを隠蔽する」
ことが、高品質コード設計技法では重要になります -- (LLバトルスレ25のレス#255も参照)
一般に普及している手続き型プログラミングでは破壊的操作が基本ですから、
「可変な操作と不変な操作の明確化」への関心はさほど強くなかったことが
現状の背景にあると思いますが、関数型プログラミングによる高品質コード設計では
こんな些細なこだわりも大切になるでしょう
(終わり)

Pythonのお勉強 Part62
Visual Studio 2019 Part4
懐かしのMS-DOSプログラミング ver.2
くだすれPython(超初心者用) その44【Ruby禁止】
【Erlang】プログラム言語 Elixir 【BEAM】
簡単なプログラム言語って何?
シェルスクリプト総合 その28
アセンブラ 13
2chの荒らし報告の書式対応のプログラム
Google Maps API 質問箱
--------------------
DREAM THEATERをコピーするスレ 14
賀喜遥香って山下美月を憧れと言ってたけど軽く越えたよな?
その旅、便乗してもいいですか?【特別編】大輔SixTONES(他)未公開放出!完全版
【飲食チェーン】「世界一店舗が多い」のは『マクドナルド』でも『スターバックス』でもなく [08/25]
ラティファ様は、全てをお許しくださいます。
小宇根知的障害俊興少女強姦放火殺人の顔
【社会】狂犬病発症の男性死亡  [すらいむ★]
【4005】住友化学【V字回復】
【一橋神戸慶應】会計大学院設置の動向見守るスレ
関東大震災の混乱の中で虐殺された朝鮮人の追悼式、公園の使用許可を求め知識人117人が連名で声明
案内・質問・相談総合スレ@ゲー音板
食レポ 2 (・ω・)ノ 【ワッチョイ無し】
【ザコ】漫画家志望者荒らしヲチスレ2【あかぎ】
【IT】技術者に未来なし、「コーダー」という呼び名に潜む人月商売の闇
教えて!おもしろシナリオの作り方 その1
【野球】プロ野球は26日に今後の試合開催を検討 中止、無観客での実施、予定通り実施などの選択肢
何回も聞いた定番話 其の参
【名無し奥も○○奥も】気楽に井戸端会議 7495【みんな来い】
au TORQUE G01 by KYOCERA Part 24
男が性転換すればタカラジェンヌになれるのか?
TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼