Learning-SICP: Chinese subtitles and study links for the MIT course
Chinese localization project for MIT's open course 'Structure and Interpretation of Computer Programs' (SICP), plus collected course learning materials.
At a glance
- What is it?
- A translation project for the 1986 MIT SICP lecture recordings, plus the tutorials, environment setup guides and further reading that Chinese speakers usually have to hunt down separately.
- Who is it for?
- Learning-SICP is at its best as an index rather than as a course platform. The subtitle files, the per-lecture translator credits and the three-column study table are the parts worth keeping, and none of them require you to install anything.
- Can I use it commercially?
- Not without permission. GitHub finds no licence file in the repository, and without a licence all rights are reserved by default: you may read the code but not reuse it. Check the README, or ask the authors, before using it.
- Is it still maintained?
- Yes. The repository last received commits 119 days ago.
- What is it written in?
- Mainly Ruby, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.
Star history
- DeathKing/Learning-SICP11,295 ★ · +9
| Repository | 2026-10-07 | 2026-10-23 |
|---|---|---|
| DeathKing/Learning-SICP | 11.3k | 11.3k |
9 Stars in the last 16 days, measured from the daily GitHub snapshot. Compare with other projects
Editorial analysis
A file tree with no software in it
The repository is small, and it is not a program. Nothing here compiles, installs or runs. The tree is the whole inventory:
README.md
Preface/
Ass/
SrtCN/
SrtEN/
Sub/
Tools/The directory that explains the project is the pair of subtitle folders. `SrtEN/` holds the English subtitle files that MIT OpenCourseWare published with the lecture videos, and `SrtCN/` holds the Chinese translations made from them. Everything else supports that transfer. `Preface/` and `Ass/` cover the book front matter and the exercises, `Sub/` is a staging area, and `Tools/` is the scratch space where the conversion and timing work happens.
GitHub reports the repository's primary language as Ruby. That label comes from the helper scripts in `Tools/`, not from anything a reader is learning, and it is worth ignoring. The subject matter of the repository is Scheme, and the repository topics say so: compiler-principles, functional-programming, interpreters, open-course, scheme and sicp.
Why a 1986 training video needed translating
The README opens by explaining where the lectures came from, and the answer is unusual. The videos are not a class recording. They are two authors, Harold Abelson and Gerald Jay Sussman, teaching Hewlett-Packard employees in July 1986. MIT later published the tapes through OpenCourseWare as part of the 6.001 course listing, with English subtitles attached.
That is the gap the project fills. The course video exists and is watchable, but the subtitles ship in English only, which puts them out of reach of exactly the `Scheme/Lisp` learners the README names. Translating the subtitle tracks, rather than re-recording or re-teaching anything, is the entire premise.
The credits at the top of the README name the institutions involved: MIT OpenCourseWare, the Harbin Institute of Technology IBM technology center, and the HIT streaming study group. The site lives at learningsicp.github.io and the README links to it as the project homepage, so the GitHub repository functions as the archive and the web page as the front door. One open issue on the tracker is consistent with a project that has been running for years and mostly needs nothing fixing.
Half-lecture segments with a named translator each
The README's central table lists every lecture in order, and it is more informative than it first looks. Each entry is a half-lecture segment rather than a full session, so the numbering runs Lec1a, Lec1b, Lec2a, Lec2b and so on. Every row carries the segment title, links to four video hosts plus an MP4 download, and the GitHub handle of whoever translated that specific segment.
| Lec1a | 《Lisp概览》 | [ [优酷] ](https://v.youku.com/v_show/id_XNTEzMDAyMTU2.html) [ [YouTube] ](https://youtu.be/IcZSFewqr9k) [ [bilibili] ](https://www.bilibili.com/video/av8515129?p=1) [ [MP4] ](https://pan.baidu.com/s/109WuY4ONSZddFXyE2hQGwg) | [DeathKing](https://github.com/DeathKing) |
| Lec2a | 《高阶过程》 | [ [优酷] ](https://v.youku.com/v_show/id_XNzAzNjI1NjU2.html) [ [YouTube] ](https://youtu.be/mrgcGvOI1bs) [ [bilibili] ](https://www.bilibili.com/video/av8515129?p=3) [ [MP4] ](https://pan.baidu.com/s/1MHiHVHfwq6x8rylBVDGV0A) | [endyul](https://github.com/endyul) |The attribution column is the detail most worth pausing on. Across the visible table the work is split across DeathKing, ChingfanTsou, endyul, Michael Savior, rtmagic, Windfarer, DreamAndDead and others, with some segments carrying two names. A translation project like this rots quickly when nobody owns a file, so crediting per segment is what keeps a volunteer effort readable years later.
The half-lecture split also matters pedagogically. The 1986 sessions run long, and the a and b divisions line up with the natural breaks in the lectures: Lisp overview, then the process of computation, then higher-order procedures, then compound data.
The three-column table that carries the actual teaching load
Above the lecture index sits a table that is quietly the most valuable page in the repository. It is organised in three columns headed, in order, guided study, environment setup and further reading. Each cell is a link out, and the spread is the point: a newcomer who has just finished Lec1a can find the book text, find a Scheme interpreter, and find the programming language theory archive without asking anyone.
| 教学辅导 | 环境配置 | 深入阅读 |
| ------- | ------ | ------- |
| [SICP原书全文·英文](https://mitpress.mit.edu/sites/default/files/sicp/full-text/book/book.html) |[MIT Scheme基本使用](http://www.math.pku.edu.cn/teachers/qiuzy/progtech/scheme/mit_scheme.htm)|[程序设计语言理论资料汇编](https://steshaw.org/plt/) |
| [Scheme入门教程·中文](https://github.com/DeathKing/yast-cn) | [DrRacket 的安装与配置](https://zhuanlan.zhihu.com/p/37056659) | [程序设计语言与逻辑研究领域经典论文](http://www.cs.cmu.edu/~crary/819-f09/) |Read the three columns together and you can see a curriculum. The first column moves from the MIT Press HTML edition of the book to a Chinese Scheme tutorial maintained under the same owner. The second moves from two classic Scheme interpreters to DrRacket and a Chinese Racket FAQ, which is the practical path for anyone on a modern operating system. The third moves from Steshaw's programming language theory collection to classic papers and Oleg's FTP archive, which is the path for someone who wants the academic history rather than the exercises.
The environment column deserves a note of caution. MIT Scheme and PLT Scheme are period software, kept here because the book's code targets them. A reader setting up today will probably use Racket instead, which is why the DrRacket and Racket FAQ entries sit in the same column.
Four video mirrors, two download hosts, one retired format
Hosting a lecture archive on services that each have their own failure modes is a practical problem, and the README's approach is to link everything everywhere. The video table at the top gives a playlist row covering Youku, a YouTube playlist, BiliBili and AcFun, and a separate row for downloads.
<td><a href="https://v.youku.com/v_show/id_XNTEzMDAyMTU2.html?f=18958522">优酷</a></td>
<td><a href="https://www.bilibili.com/video/av8515129/">BiliBili</a></td>The download row splits between a Baidu netdisk folder and a Google Drive folder. The note attached to that table explains why the split exists twice: MKV files are no longer offered because they require an extra subtitle installation step to watch, and readers outside mainland China are pointed at Google Drive for speed. The note is small but it is the kind of practical detail that usually goes undocumented.
What the table does not offer is a download of the videos in a form you can trust long-term. The streaming hosts are third-party platforms whose URLs and retention policies are outside the project's control. The subtitles are the durable asset here, not the video links.
Where the README stops and the wider SICP ecosystem takes over
The repository is explicit about its own limits, which is unusual and useful. Exercises are not answered inside the project. The README points to the SICP Solutions page on SchemeWiki and suggests the GitHub issue tracker for questions during study. The book itself is hosted by MIT Press, not here, and the videos belong to MIT OpenCourseWare.
There are also no releases, no tags and no version history worth speaking of. The repository has no license file, so the reuse terms for the translated subtitles are not stated in the tree. If you plan to reuse the Chinese subtitle files in your own teaching or tooling, that gap is the first thing to resolve, and it is a question for the maintainers rather than something the README answers.
The last commit landed on 2026-06-26. That is recent enough to call the project alive, though the shape of the work suggests a steady trickle of fixes to timing and translation rather than a burst of new features. Translation of this kind has a long tail: every new tool that touches subtitle timing can reintroduce errors that took an hour to find.
Editorial conclusion
Learning-SICP is at its best as an index rather than as a course platform. The subtitle files, the per-lecture translator credits and the three-column study table are the parts worth keeping, and none of them require you to install anything. What it does not do is teach you the exercises, translate the book, or host the videos, so a reader still needs the MIT Press text and SchemeWiki solutions alongside it. Start with SrtCN/ for a lecture, fall back to SrtEN/ when a line looks off, and treat Tools/ as the place to look if you want to understand how the subtitle files were produced.
Frequently asked questions
What does SICP mean?
SICP stands for Structure and Interpretation of Computer Programs, the MIT textbook by Harold Abelson and Gerald Jay Sussman. Learning-SICP is not a fork or a rewrite of that book. It is a translation and companion project for the 1986 lecture recordings of the same course, with Chinese subtitles and links to the book, Scheme tutorials and further reading.
Is SICP still relevant?
The repository treats it as a live course rather than an archive. The last push was on 2026-06-26, subtitles are corrected after they are published, and the linked resources have been updated to include DrRacket setup alongside the older MIT Scheme and PLT Scheme notes. The half-lecture segments on closures, streams and the metacircular evaluator are still the clearest introduction to those ideas available anywhere.
Is LISP a functional language?
SICP treats Lisp as a language where functional technique is the default, not the only option, which is why the repository lists functional-programming and interpreters among its topics while the lectures also cover assignment, state and side effects. The subtitle tracks cover the higher-order procedure and stream material that the functional case rests on, in Chinese, which is rarer than it should be.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/deathking-learning-sicp)Star history chart for your README
[](https://hysenlabs.com/projects/deathking-learning-sicp)Was this useful?