用語の定義は異なっているように見えます が、私は常に一方が他方を意味すると考えてきました。式が参照透過性であるが純粋ではない場合、またはその逆の場合は考えられません。
ウィキペディアは、これらの概念について個別の記事を維持しており、次のように述べています。
参照透過性から:
式に含まれるすべての関数が純粋関数である場合、式は参照透過性です。また、一部の不純な関数は、それらの値が破棄され、それらの副作用が重要でない場合、式に含めることができます。
純粋な表現から:
純粋式を構築するには純粋関数が必要です。[...]純粋な表現は、参照透過性と呼ばれることがよくあります。
これらのステートメントは紛らわしいと思います。いわゆる「不純な関数」による副作用が、プログラムを大幅に変更せずに実行できない(つまり、そのような関数の呼び出しをその値に置き換える)ほど重要でない場合、それは、そもそもね。
純粋な式と参照透過性の式の違いを理解するためのより簡単な方法はありますか?違いがある場合は、それを明確に示す式の例をいただければ幸いです。