Ksenofont powiedział, że Sokrates był mądry nie jest równoznaczne z Ksenofont powiedział, że założyciel filozofii zachodniej był mądry).

Przejrzystość referencyjna zależy od wartości nadawanych wyrażeniom, czyli semantyki języka. Zarówno deklaratywne, jak i imperatywne języki programowania mogą zatem być referencyjnie przejrzyste lub referencyjnie nieprzejrzyste, w zależności od używanej semantyki. Na przykład swobodna modyfikacja globalnego stanu z reguły nie jest referencyjnie transparentna, gdyż dane wyjściowe funkcji nie są zależne wyłącznie od jej danych wejściowych, ale również od ukrytych zależności (będących poza zakresem funkcji i jej wywołania). Taka funkcja przestaje wówczas być czystą funkcją, tj. funkcją w matematycznym tego słowa znaczeniu i staje się potencjalnie niedeterministyczna.

Istotą przejrzystości referencyjnej jest umożliwienie programistom i kompilatorom analizę zachowania programu jako systemu przepisywania.