鏈結

The Development of Chez Scheme

前情提要:Chez Scheme 的传说
http://blog.sina.com.cn/s/blog_5d90e82f0101jscn.html

Version 1
1. 做 PhD 研究的時候用 Scheme 寫模擬,當時用的 Scheme 實作都太慢了,就自己寫一個。
2. 變更常見設計,Create closure 時間與已有的數量成正比,access closure 時間是常數,原來是反過來的。
3. 做一做發現做這個比較有意思,又可以給更多人用,研究就轉向了。
4. 看到 ML 的 interactive, incremental compiler 覺得很帥,但是這需要自己寫 assembler和 linker,就下去做了,開始的時候覺得是巨大的挑戰,最後的結果是簡單明瞭。
5. 第一個版本是 BSD on VAX
6. 現在上課會告訴學生「最佳化」和「不笨」是有差的,第一個版本在高階設計用的技法只是不笨。大部份做的是低階部分的最佳化。成果是比別人快別人穩,附加 type & boundary check。

Version 3
7. 移植到 MC88800 的時候, 硬體 / OS / Compiler 全都還在開發中,非常困難,碰到一個硬體的 bug,造成子程序返回的時候不是返回父程序,是返回父程序的父程序。
8. 用 C 寫的部分都改成用 Scheme 寫了,結果跑得更快。

9. “Many programmers still use Chez Scheme with emacs, and true power users like me use it with vi"

Version 4~7 的部分我就跳過不寫了,主要再講加了哪些高階最佳化和語言功能的發展。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 變更 )

Twitter picture

You are commenting using your Twitter account. Log Out / 變更 )

Facebook照片

You are commenting using your Facebook account. Log Out / 變更 )

Google+ photo

You are commenting using your Google+ account. Log Out / 變更 )

連結到 %s