• 直接函數

    編輯
    本詞條由“匿名用戶” 建檔。

    什么是直接函數

    編輯

    直接函數(dfn,發音為deefun)是編程語言APL中定義函數和運算符(高階函數)的一種替代方式。直接運算符也可以被稱為dop(發音為deeop)。它們是由JohnScholes在1996年發明的。它們是數組編程、高階函數和函數式編程的獨特組合,是21世紀初APL相對于以前版本的一個主要區別性進步。dfn是在{和}之間的一串可能有防護的表達式(或者只是一個防護),用?或new-line隔開,其中?表示左參數,?表示右參數,?表示遞歸(函數自引用)。例如,函數PT測試?的每一行是否是畢達哥拉斯式三段論(通過測試平方之和是否等于xxx值的兩倍)。說明dfns的規則由以下參考卡總結。dfn是在{和}之間的一串可能有保護的表達式(或者只是一個保護),用?或新行分隔。expressionguard:表達式守護。表達式和/或護衛依次被評估。一個衛兵必須評估為0或1;如果其相關的表達式的值為1,則對其進行評估。一個dfn在xxx個不以賦值結束的未衛兵表達式之后,或者在xxx個衛兵表達式的衛兵評估為1之后,或者沒有更多的表達式之后終止。dfn的結果是最后一個被評估的表達式的結果。如果最后一個被評估的表達式以賦值結束,那么其結果將不會自動顯示在會話中。在dfn中分配的名字默認是本地的,具有詞法范圍。?表示左邊的函數參數,?表示右邊;??表示左邊的操作數,??表示右邊。如果定義中出現了??,那么dfn就是一個二元運算符;如果只出現了??而沒有出現?,那么它就是一個單元運算符;如果??和?都沒有出現,那么dfn就是一個函數。如果dfn被單調地調用,即調用時沒有左參數,那么特殊語法?←表達式被用來給左參數一個默認值。

    編程語言直接函數

    否則,?←表達式不會被評估。?表示遞歸或函數的自引用,?表示運算符的自引用。這樣的表示法允許匿名遞歸。錯誤捕獲是通過錯誤保護器(errnums::expression)提供的。當一個錯誤產生時,系統通過調用函數動態地搜索與該錯誤相匹配的錯誤保護。如果找到了,執行環境就會被解開到錯誤保護執行前的狀態,并且錯誤保護的相關表達式被評估為dfn的結果。關于dfns的其他描述、解釋和教程可在引用的文章中找到。

    直接函數的例子

    編輯

    這里的例子說明了dfns的不同方面。其他的例子可以在引用的文章中找到。默認的左邊參數函數{?+0j1×?}將?添加到0j1(i或復數可以被構造為實數的有序對,類似于整數可以被構造為自然數的有序對,有理數可以被構造為整數的有序對。對于復數,{?+0j1×?}的作用與整數的-和有理數的÷相同。此外,類似于單體-??0-?(否定)和單體÷??1÷?(倒數),函數的單體定義是有用的,通過為?指定一個默認值0來實現。如果j←{?←0??+0j1×?},則j??0j??0+0j1×?。

    內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/164246/

    (2)
    詞條目錄
    1. 什么是直接函數
    2. 直接函數的例子

    輕觸這里

    關閉目錄

    目錄
    91麻精品国产91久久久久