なんかプロトタイプベースのオブジェクト指向を誤解している人がクローンに対して誤った知識をぶつけてブクマでマウント取ってきたんだけど、一般にプロトタイプベースにおけるクローンはシャローコピーであることが多い(JS以外だとIoをちょっとかじった程度だから、ディープコピーしている言語あったらごめんだけど)から、シャローコピーだからと言ってクローンではない、という認識が間違ってるんだよな。そもそも一般的なクローンと、プロトタイプベースにおけるクローンを同一視していることが間違いだし、Object.createをオブジェクトのクローン相当とは一言も書いていない。ストローマン論法が過ぎる
ほかのブクマコメントを見ていても、コピーじゃない、コピーじゃない、っていうのが目立つけど、let x = ⊢ o: objectをコピーじゃないとするのは、それこそ間違い。値そのものはコピーしていないが、値の参照をコピーしている。また、これを参照渡しと言うのも間違い。これも「参照値」を渡しているので、立派な値渡し。参照の値渡し、または共有渡しと呼ばれる奴ですね。
FortranやC++を触ったことがないから、共有渡しをコピーじゃないとか言えるんだろうな、と、マウント取ってみた