referential-transparency

    3熱度

    2回答

    我試圖調和參考透明度的定義與OCaml如何處理多態類型和副作用。我對http://www.csc.villanova.edu/~dmatusze/resources/ocaml/ocaml.html讀到 的定義是說有引用透明,如果它的意義並不取決於它是在中OCaml的功能都引用透明的情況下,即,改變的背景下(其他變量和其他函數)不會改變您已經定義的任何函數的含義。在調試程序時,這一事實可能至關重要

    2熱度

    1回答

    我們注意到,Java的8使用Referential Transparency: 我測試許多代碼來檢測這個RT,如: public class ReferentialTransparency { public static int triple(int number) { System.out.println(number); try { Thr

    3熱度

    3回答

    我正在學習Haskell。如果我理解正確,Haskell中的一個簡單函數總是透明的。我認爲這意味着它的輸出只取決於傳遞給它的參數。 但功能f可以調用另一個函數g,在外範圍限定。所以在這個意義上,f的返回值取決於g的定義。並且函數g不作爲參數傳遞給f - 至少不是明確的。這不破壞參考透明度嗎?

    3熱度

    2回答

    我只是想知道,在純功能語言中,如何在不引入副作用的情況下使用API​​進行連接?

    1熱度

    4回答

    對不起新問題,但Haskell如何知道不要將參照透明度應用於readLn或當putStrLn - 兩次相同的字符串?是否因爲涉及IO? IOW,編譯器不會將參照透明度應用於返回IO的函數嗎?

    1熱度

    2回答

    Erlang中的單一賦值如何導致更可讀的代碼(引用透明)?

    15熱度

    2回答

    我正在選擇一個具體的任務來說明我在說什麼 假設我想找到一個大數字的所有因素的總和,天真地 - 通過檢查下面的每個數字,如果它是一個因素,然後將它們加在一起。 與IO和純計算之間沒有分離的命令式編程語言,你可以做這樣的 def sum_of_factors(n): sum = 0 for i between 1 and n: if (n % i == 0):

    1熱度

    2回答

    我想在我的發電機的以下兩個定義之間做出決定。哪個更好?這是「更pythonic」?無論如何要緩解每個人的缺點? def myGenerator1(howMany): result = [0,0,0] yield result for i in range(howMany) modifyListInPlace(result) yield resu

    1熱度

    2回答

    我目前正在進行關於函數式編程的演示,並且遇到了以下問題。 函數式編程旨在將'what'與'how',或者更確切地說是從其解釋中的計算聲明中分離出來。這就是爲什麼這種範例的主要焦點之一是使用可組合的數據結構來表示計算,而不做任何關於它們如何執行的假設。例如: // Represents a computation that may fail case class Unsafe[A,B](run:

    5熱度

    4回答

    如何在IO函數中使用純函數? : -/ 例如:我正在讀文件(IO函數),我想通過使用具有參照透明度的純函數來解析其上下文(字符串)。 似乎這樣的世界,純粹的功能和IO功能是分開的。我怎樣才能彌合他們?