Racket(Scheme)有哪些威力十足的庫?

都說Racket(Scheme)是教學語言,它在實際工程上有哪些好用的庫?


謝邀。

Racket的庫太豐富了,可以參見官網的 Packages 分類(Packages),故不贅述。

至於 Scheme,眾所周知,類似於 RFC ,Scheme 的擴展都是通過 SRFI (Scheme Requests for Implementation)來實現的,所以搜 SRFI 能搜到很多擴展包/腳本。

放一個 Scheme 的十全大補丸吧——SLIB(The SLIB Portable Scheme Library)。這庫是由MIT 的 Aubrey Jaffer 創建並維護的,支持目前主流的 Scheme 實現。主要提供的功能有:

  • 部分 SRFI
  • 語言語法擴展
  • 文本處理(包括HTML、XML的處理)
  • 數學相關包(甚至還有plot)
  • 資料庫相關

等等。這個是手冊:http://people.csail.mit.edu/jaffer/slib.pdf

另外,Scheme 的官方實現 MIT-Scheme 本身就有豐富的功能了,讀一下收穫還是挺多的

  • http://www.gnu.org/software/mit-scheme/documentation/mit-scheme-ref.pdf

  • http://www.gnu.org/software/mit-scheme/documentation/mit-scheme-user.pdf

一些零碎的東西:

  • 經典數據結構的 Scheme 實現(注意,很多是命令式風格的,用了set!):Scheme code for Data Structures
  • 測試套件:axch/test-manager · GitHub
  • plot:axch/adaptive-plot · GitHub
  • axch/integer-sequences · GitHub


工程用的庫當然是這裡啦,樓主擼的一個庫,很方便。打算做個遊戲引擎用的。 evilbinary/scheme-lib


srfi/19 能讓你得自己去實現加減時間


上面的回答都不全面,都只是在介紹scheme的庫。

racket/gui 編寫用戶界面

racket/scribble 編寫文檔和論文

slideshow 編寫幻燈片

racket/draw 繪圖庫

typed/racket 靜態類型racket,更快的速度

racket/math 數學函數,矩陣運算庫

pict 函數式圖形庫

rackunit 單元測試

racket/contract 契約

一些不夠成熟的庫就不介紹了


推薦閱讀:

Racket和Haskell誰更有發展潛力?
愉悅的scheme之旅(4)--Delimited Continuations

TAG:函數式編程 | Lisp | Scheme | Racket |