参照透過
referential transparency
https://qiita.com/Yametaro/items/1de3c2b76b8a4dc2d30d
https://ja.wikipedia.org/wiki/参照透過性
ある式を評価した結果の値が、その式と常に置き換えられるとき、その式は純粋であるという
同じ入力に対して、常に同じ出力を返すだけでは不十分
反例は
(() => { console.log("Hello"); return 0 })()
同じ入力に同じ出力を返すが、挙動が変わるため置き換えることはできない
なのでこれは参照透過ではない
https://qiita.com/knaka/items/b18134d9d11b51da4e2e
分析哲学
由来の言葉なのらしい
Willard van Orman Quine
https://qiita.com/sasanquaneuf/items/3df1001a027e868e9e0e
https://stackoverflow.com/questions/210835/what-is-referential-transparency/9859966#9859966
https://stackoverflow.com/questions/37244023/is-date-now-referential-transparent
https://twitter.com/mandel59/status/1333639281546383360
https://twitter.com/mandel59/status/1357158097161134080
https://twitter.com/mandel59/status/1582564134125592579
https://twitter.com/mandel59/status/1582563807649415169
https://twitter.com/mandel59/status/1582566268145520640
https://twitter.com/mandel59/status/1582567338926186497
https://twitter.com/mandel59/status/1582567690085900288
https://twitter.com/mandel59/status/1582568035675561984
https://twitter.com/mandel59/status/1582568744659824640
https://twitter.com/mandel59/status/1582569089389641728