SICP習題 1 5 應用序與正則序

2022-01-29 08:39:47 字數 406 閱讀 1003

(define (p) (p))

(define (test x y)

(if (= x 0)

0y))

(test 0 (p))

哇,這麼快就印證了我的想法了嗎.

首先用r5rs跑一遍,啥都沒有.然後切換成lazy racket,結果為0.

解釋:前者是應用序,p一傳進來就求值,不斷的呼叫自己,無限迴圈.

後者是正則序,從頭到尾都沒執行p.

到此處我又有了乙個想法:

(define (p) (p))

(define (test x y)

(if (> x 0)

0y))

(test 0 (p))

此時用lazy racket來執行,也會陷入無限迴圈.這就是到了不得不求值的時候了.

SICP習題 1 9 遞迴與迭代初探

define plus recursive a b if a 0 b inc plus recursive dec a b define inc n n 1 define dec n n 1 plus recursive 3 5 從計算過程中可以很明顯地看到伸展和收縮兩個階段,且伸展階段所需的額外儲...

資料庫技術與應用習題

1單選 2分 下面有關資料庫還原的說法中,錯誤的是 a.使用mysql命令可以還原資料庫中的資料 b.還原資料庫是通過備份好的資料檔案進行還原 c.還原是指還原資料庫中的資料,而庫是不能被還原的 d.資料庫中的庫可以被還原的 答案 d 2單選 2分 下面使用set語句將root使用者的密碼修改為my...

正則的簡單學習與應用

importre match 從開頭進行匹配,匹配到就返回正則結果物件,沒有返回none。m re.match abc abcdaskjabcsdaj print m.group 返回要匹配的內容 print m.span 返回匹配內容位置 匹配所有內容,找到返回所有匹配的內容列表,沒有找到返回空列...