Interactive Structure and Interpretation of Computer Programs
See the code
Structure and Interpretation of Computer Programs now in an interactive textbook form!
Click on (almost) any code fragment to edit. Ctrl-Enter will re-run the script.
NOTE: a lot of the code lives in a separate repository, web-worker-interpreter
This project is a work-in-progress and we need your help!
The chapter and section files here will be generated by render_all.sh using files in content/ as input. Please make changes there.
iSICP is built on the web-worker-interpreter/coding.js library. We use the CodeMirror editor and a custom scheme interpreter.
If you just wish to help port more of SICP to this site, here is how to create an interactive code fragment.
<div id="scheme-times-size">
(* 5 size)
</div>
<script>
prompt("scheme-times-size", ["scheme-define-size"]);
</script>
the div contains the initial text. The second argument to prompt is optional and specifies dependencies.
207 followers · starred Jan 2014
285 followers · starred Nov 2014
214 followers · starred Feb 2019
1,433 followers · starred Feb 2019
Interactive Structure and Interpretation of Computer Programs
See the code
Structure and Interpretation of Computer Programs now in an interactive textbook form!
Click on (almost) any code fragment to edit. Ctrl-Enter will re-run the script.
NOTE: a lot of the code lives in a separate repository, web-worker-interpreter
This project is a work-in-progress and we need your help!
The chapter and section files here will be generated by render_all.sh using files in content/ as input. Please make changes there.
iSICP is built on the web-worker-interpreter/coding.js library. We use the CodeMirror editor and a custom scheme interpreter.
If you just wish to help port more of SICP to this site, here is how to create an interactive code fragment.
<div id="scheme-times-size">
(* 5 size)
</div>
<script>
prompt("scheme-times-size", ["scheme-define-size"]);
</script>
the div contains the initial text. The second argument to prompt is optional and specifies dependencies.
207 followers · starred Jan 2014
285 followers · starred Nov 2014
214 followers · starred Feb 2019
1,433 followers · starred Feb 2019