跳至內容
主選單
主選單
移至側邊欄
隱藏
導覽
首頁
近期變更
隨機頁面
MediaWiki說明
Taiwan Tongues 台語維基
搜尋
搜尋
外觀
建立帳號
登入
個人工具
建立帳號
登入
檢視 LispKitLisp 的原始碼
頁面
討論
臺灣正體
閱讀
檢視原始碼
檢視歷史
工具
工具
移至側邊欄
隱藏
操作
閱讀
檢視原始碼
檢視歷史
一般
連結至此的頁面
相關變更
特殊頁面
頁面資訊
外觀
移至側邊欄
隱藏
←
LispKitLisp
由於以下原因,您無權編輯此頁面:
您請求的操作只有這些群組的使用者能使用:
使用者
、taigi-reviewer、apibot
您可以檢視並複製此頁面的原始碼。
'''LispKit Lisp'''是 Lisp 語言的嚴格函數式子集(「'''純純 Lisp'''」), 伊是做函數式的編程概念的測試台開發的。伊首先有使用矣對慢性求值的早期經驗。佇一九八O年開發者 Peter Henderson,出版矣用一種變體 ALGOL 語言寫的是基於 SECD 抽象機的實現。編譯器佮虛擬機攏是懸度會當徙栽,並已經佇咧多種機器頂懸實現。 ==基本函數== 基本語言干焦提供予下列函數,猶毋過佇 Henderson 的冊當中討論了明確支持貧惰性求值佮非確定性編程的擴展。 '''atom''' : 接受一个表達式,若是伊的值是原子倒轉去 True;若無閣倒轉來 False。 '''add''' : 接受兩个表達式,倒轉來伊的數值的佮。 '''car''' : 接受其值為點著的一个表達式,倒轉這个點著的第一个值。 '''cdr''' : 接受其值為點著的一个表達式,倒轉來這个點著的第二个值。 '''cons''' : 接受兩个表達式,倒轉來由伊的值構成的一个點對值。 '''div''' : 接受兩个表達式,閣倒轉來伊的數值的商。 '''eq''' : 接受兩个表達式,如果𪜶的值相等愛共伊倒轉來 True;若無閣倒轉來 False。 '''if''' : 接受三个表達式,你若頭一个為 True 則轉去第二个的值,抑若無轉去第三个的值。 '''lambda''' : 接受一个表達式,倒轉來這个表達式為可求值的值。 '''let''' : 接受號名表達式的一个列表,倒轉來這个列表為一个單一可求值的值。 '''letrec''' : 接受號名表達式的一个列表,倒轉來這个列表為一个單一可求值的值。 '''leq''' : 接受兩个表達式,若是頭一个數值小於抑是等於第二个是倒轉來 True;若無閣倒轉來 False。 '''rem''' : 接受兩个表達式,倒轉來伊的數值的餘數。 '''mu''' : 接受兩个表達式,倒轉來伊的數值的積。 '''quote''' : 接受一个表達式,倒轉來這个表達式為一个值。 '''sub''' : 接受兩个表達式,倒轉來伊的數值的差。 函數 lambda、let 和 letrec 是類似的,但是佇咧處理號名變量的方式有微妙的區別,故有無仝的用處。lambda 定義並倒轉來一个函數,let 共表達式兩值予變量名,而且 letrec 本質上類似 let,除了伊允准遞歸函數的定義以外。 ==引用== ==進一步來讀冊== * Peter Henderson , Geraint A . Jones , and Simon B . Jones , " The LispKit Manual " ( ISBN 空空九十五空二千九百二十八撨十八-X ) ==外部連結== * The LispKit Manual , Volume 一 , Volume 二 * Implementation of Lispkit * GNU Pascal LispKit port * Archive of old LispKit LISP code and files , plus C implementation of SECD machine * Paper about a LispKit LISP implementation in Java , and the implementation itself [[分類: 待校正]]
返回到「
LispKitLisp
」。