2012-07-12 57 views
5

任何人都知道racket/base語言中包含的內容。我期望將racket/base名稱空間定義與R7RS草案進行比較,以便第一時間瞭解Racket與Scheme之間的差異。球拍/底部命名空間

回答

9

差異將是巨大的,就像任何其他實際的計劃實施。爲了給你一個大概的想法,我看到來自racket/base的1300多個標識符,而racket也超過了2000個。另外,請注意,比較名字並不是全部內容 - 還有其他不同之處,比如球拍默認情況下使用不可變對,並且像保證從左到右的評估順序一樣。

一個快速的方法來獲得列出自己爲前將確保XREPL安裝(有你的~/.racketrc文件包含(require xrepl)),然後用racket/base作爲repl語言開始球拍,並使用,ap(中肯)不帶參數的命令,以便它可以顯示所有的約束名稱:

$ racket -I racket/base 
Welcome to Racket v5.2.1. 
-> ,ap 

要了解的名字,你可以使用,doc命令,或只使用search box的文檔。

+0

直截了當的答案,順便說一句,r7rs草案看起來像一種實用的語言。 – cobie 2012-07-12 19:28:23

+3

「實用」是一個相對術語...它比r5rs更實用,但它不會有線程,子進程,網絡,非阻塞IO以及其他巨大的事情,所以差別很大。即使是大語言也不會有所有這些。 – 2012-07-12 19:56:11

1

根據The Racket Reference

除非另有說明,本說明書中定義的綁定由球拍/鹼和球拍語言導出。

不幸的是,這不是非常有幫助,因爲它是一本大型參考手冊。但是,由於您將R7RS與Racket進行比較,因此瀏覽整個參考資料以瞭解可用內容可能會有所幫助。