about summary refs log tree commit diff stats
path: root/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5
diff options
context:
space:
mode:
authorelioat <elioat@tilde.institute>2023-08-23 07:52:19 -0400
committerelioat <elioat@tilde.institute>2023-08-23 07:52:19 -0400
commit562a9a52d599d9a05f871404050968a5fd282640 (patch)
tree7d3305c1252c043bfe246ccc7deff0056aa6b5ab /js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5
parent5d012c6c011a9dedf7d0a098e456206244eb5a0f (diff)
downloadtour-562a9a52d599d9a05f871404050968a5fd282640.tar.gz
*
Diffstat (limited to 'js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5')
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/fib.scm12
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html28
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=D;O=A28
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=D;O=D28
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=M;O=A28
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=M;O=D28
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=N;O=A28
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=N;O=D28
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=S;O=A28
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/prime0.scm8
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/prime1.scm22
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/prime2.scm22
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/show-stream.scm15
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/sieve.scm10
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream-pack.scm52
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream0.scm6
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream1.scm20
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream2.scm20
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/streamstate.scm87
19 files changed, 498 insertions, 0 deletions
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/fib.scm b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/fib.scm
new file mode 100644
index 0000000..6a2d8e6
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/fib.scm
@@ -0,0 +1,12 @@
+(define (add-streams s1 s2)(cond((stream-null? s1)s2)
+				((stream-null? s2)s1)
+				(else (cons-stream (+ (stream-car s1)
+						(stream-car s2))
+					     (add-streams
+					      (stream-cdr s1)
+					      (stream-cdr s2))))))
+
+(define fibs (cons-stream 0
+			  (cons-stream 1
+				       (add-streams (stream-cdr fibs)
+						    fibs))))
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html
new file mode 100644
index 0000000..ec3d559
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<html>
+ <head>
+  <title>Index of /~bh/61a-pages/Lectures/3.5</title>
+ </head>
+ <body>
+<h1>Index of /~bh/61a-pages/Lectures/3.5</h1>
+  <table>
+   <tr><th valign="top"><img src="../../../../icons/blank.gif" alt="[ICO]"></th><th><a href="index.html?C=N%3BO=D">Name</a></th><th><a href="index.html?C=M%3BO=A">Last modified</a></th><th><a href="index.html?C=S%3BO=A">Size</a></th><th><a href="index.html?C=D%3BO=A">Description</a></th></tr>
+   <tr><th colspan="5"><hr></th></tr>
+<tr><td valign="top"><img src="../../../../icons/back.gif" alt="[PARENTDIR]"></td><td><a href="../../Lectures">Parent Directory</a>       </td><td>&nbsp;</td><td align="right">  - </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="fib.scm">fib.scm</a>                </td><td align="right">2003-04-25 12:52  </td><td align="right">337 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/ints-from">ints-from</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right"> 76 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime0.scm">prime0.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">166 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime1.scm">prime1.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">445 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime2.scm">prime2.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">640 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="show-stream.scm">show-stream.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">390 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="sieve.scm">sieve.scm</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right">268 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/stream-memo.scm">stream-memo.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream-pack.scm">stream-pack.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream0.scm">stream0.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">171 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream1.scm">stream1.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">462 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream2.scm">stream2.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">508 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="streamstate.scm">streamstate.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">2.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/text.gif" alt="[TXT]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/why-streams">why-streams</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">381 </td><td>&nbsp;</td></tr>
+   <tr><th colspan="5"><hr></th></tr>
+</table>
+</body></html>
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=D;O=A b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=D;O=A
new file mode 100644
index 0000000..3ef51c8
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=D;O=A
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<html>
+ <head>
+  <title>Index of /~bh/61a-pages/Lectures/3.5</title>
+ </head>
+ <body>
+<h1>Index of /~bh/61a-pages/Lectures/3.5</h1>
+  <table>
+   <tr><th valign="top"><img src="../../../../icons/blank.gif" alt="[ICO]"></th><th><a href="index.html?C=N%3BO=A">Name</a></th><th><a href="index.html?C=M%3BO=A">Last modified</a></th><th><a href="index.html?C=S%3BO=A">Size</a></th><th><a href="index.html?C=D%3BO=D">Description</a></th></tr>
+   <tr><th colspan="5"><hr></th></tr>
+<tr><td valign="top"><img src="../../../../icons/back.gif" alt="[PARENTDIR]"></td><td><a href="../../Lectures">Parent Directory</a>       </td><td>&nbsp;</td><td align="right">  - </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="fib.scm">fib.scm</a>                </td><td align="right">2003-04-25 12:52  </td><td align="right">337 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/ints-from">ints-from</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right"> 76 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime0.scm">prime0.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">166 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime1.scm">prime1.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">445 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime2.scm">prime2.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">640 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="show-stream.scm">show-stream.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">390 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="sieve.scm">sieve.scm</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right">268 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/stream-memo.scm">stream-memo.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream-pack.scm">stream-pack.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream0.scm">stream0.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">171 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream1.scm">stream1.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">462 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream2.scm">stream2.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">508 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="streamstate.scm">streamstate.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">2.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/text.gif" alt="[TXT]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/why-streams">why-streams</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">381 </td><td>&nbsp;</td></tr>
+   <tr><th colspan="5"><hr></th></tr>
+</table>
+</body></html>
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=D;O=D b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=D;O=D
new file mode 100644
index 0000000..5905ef1
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=D;O=D
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<html>
+ <head>
+  <title>Index of /~bh/61a-pages/Lectures/3.5</title>
+ </head>
+ <body>
+<h1>Index of /~bh/61a-pages/Lectures/3.5</h1>
+  <table>
+   <tr><th valign="top"><img src="../../../../icons/blank.gif" alt="[ICO]"></th><th><a href="index.html?C=N%3BO=A">Name</a></th><th><a href="index.html?C=M%3BO=A">Last modified</a></th><th><a href="index.html?C=S%3BO=A">Size</a></th><th><a href="index.html?C=D%3BO=A">Description</a></th></tr>
+   <tr><th colspan="5"><hr></th></tr>
+<tr><td valign="top"><img src="../../../../icons/back.gif" alt="[PARENTDIR]"></td><td><a href="../../Lectures">Parent Directory</a>       </td><td>&nbsp;</td><td align="right">  - </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/text.gif" alt="[TXT]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/why-streams">why-streams</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">381 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="streamstate.scm">streamstate.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">2.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream2.scm">stream2.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">508 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream1.scm">stream1.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">462 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream0.scm">stream0.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">171 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream-pack.scm">stream-pack.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/stream-memo.scm">stream-memo.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="sieve.scm">sieve.scm</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right">268 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="show-stream.scm">show-stream.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">390 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime2.scm">prime2.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">640 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime1.scm">prime1.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">445 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime0.scm">prime0.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">166 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/ints-from">ints-from</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right"> 76 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="fib.scm">fib.scm</a>                </td><td align="right">2003-04-25 12:52  </td><td align="right">337 </td><td>&nbsp;</td></tr>
+   <tr><th colspan="5"><hr></th></tr>
+</table>
+</body></html>
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=M;O=A b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=M;O=A
new file mode 100644
index 0000000..bd4b52a
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=M;O=A
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<html>
+ <head>
+  <title>Index of /~bh/61a-pages/Lectures/3.5</title>
+ </head>
+ <body>
+<h1>Index of /~bh/61a-pages/Lectures/3.5</h1>
+  <table>
+   <tr><th valign="top"><img src="../../../../icons/blank.gif" alt="[ICO]"></th><th><a href="index.html?C=N%3BO=A">Name</a></th><th><a href="index.html?C=M%3BO=D">Last modified</a></th><th><a href="index.html?C=S%3BO=A">Size</a></th><th><a href="index.html?C=D%3BO=A">Description</a></th></tr>
+   <tr><th colspan="5"><hr></th></tr>
+<tr><td valign="top"><img src="../../../../icons/back.gif" alt="[PARENTDIR]"></td><td><a href="../../Lectures">Parent Directory</a>       </td><td>&nbsp;</td><td align="right">  - </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="fib.scm">fib.scm</a>                </td><td align="right">2003-04-25 12:52  </td><td align="right">337 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/ints-from">ints-from</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right"> 76 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime0.scm">prime0.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">166 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime1.scm">prime1.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">445 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime2.scm">prime2.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">640 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="show-stream.scm">show-stream.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">390 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="sieve.scm">sieve.scm</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right">268 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/stream-memo.scm">stream-memo.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream-pack.scm">stream-pack.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream0.scm">stream0.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">171 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream1.scm">stream1.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">462 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream2.scm">stream2.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">508 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="streamstate.scm">streamstate.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">2.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/text.gif" alt="[TXT]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/why-streams">why-streams</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">381 </td><td>&nbsp;</td></tr>
+   <tr><th colspan="5"><hr></th></tr>
+</table>
+</body></html>
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=M;O=D b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=M;O=D
new file mode 100644
index 0000000..5905ef1
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=M;O=D
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<html>
+ <head>
+  <title>Index of /~bh/61a-pages/Lectures/3.5</title>
+ </head>
+ <body>
+<h1>Index of /~bh/61a-pages/Lectures/3.5</h1>
+  <table>
+   <tr><th valign="top"><img src="../../../../icons/blank.gif" alt="[ICO]"></th><th><a href="index.html?C=N%3BO=A">Name</a></th><th><a href="index.html?C=M%3BO=A">Last modified</a></th><th><a href="index.html?C=S%3BO=A">Size</a></th><th><a href="index.html?C=D%3BO=A">Description</a></th></tr>
+   <tr><th colspan="5"><hr></th></tr>
+<tr><td valign="top"><img src="../../../../icons/back.gif" alt="[PARENTDIR]"></td><td><a href="../../Lectures">Parent Directory</a>       </td><td>&nbsp;</td><td align="right">  - </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/text.gif" alt="[TXT]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/why-streams">why-streams</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">381 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="streamstate.scm">streamstate.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">2.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream2.scm">stream2.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">508 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream1.scm">stream1.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">462 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream0.scm">stream0.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">171 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream-pack.scm">stream-pack.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/stream-memo.scm">stream-memo.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="sieve.scm">sieve.scm</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right">268 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="show-stream.scm">show-stream.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">390 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime2.scm">prime2.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">640 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime1.scm">prime1.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">445 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime0.scm">prime0.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">166 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/ints-from">ints-from</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right"> 76 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="fib.scm">fib.scm</a>                </td><td align="right">2003-04-25 12:52  </td><td align="right">337 </td><td>&nbsp;</td></tr>
+   <tr><th colspan="5"><hr></th></tr>
+</table>
+</body></html>
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=N;O=A b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=N;O=A
new file mode 100644
index 0000000..ec3d559
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=N;O=A
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<html>
+ <head>
+  <title>Index of /~bh/61a-pages/Lectures/3.5</title>
+ </head>
+ <body>
+<h1>Index of /~bh/61a-pages/Lectures/3.5</h1>
+  <table>
+   <tr><th valign="top"><img src="../../../../icons/blank.gif" alt="[ICO]"></th><th><a href="index.html?C=N%3BO=D">Name</a></th><th><a href="index.html?C=M%3BO=A">Last modified</a></th><th><a href="index.html?C=S%3BO=A">Size</a></th><th><a href="index.html?C=D%3BO=A">Description</a></th></tr>
+   <tr><th colspan="5"><hr></th></tr>
+<tr><td valign="top"><img src="../../../../icons/back.gif" alt="[PARENTDIR]"></td><td><a href="../../Lectures">Parent Directory</a>       </td><td>&nbsp;</td><td align="right">  - </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="fib.scm">fib.scm</a>                </td><td align="right">2003-04-25 12:52  </td><td align="right">337 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/ints-from">ints-from</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right"> 76 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime0.scm">prime0.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">166 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime1.scm">prime1.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">445 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime2.scm">prime2.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">640 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="show-stream.scm">show-stream.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">390 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="sieve.scm">sieve.scm</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right">268 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/stream-memo.scm">stream-memo.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream-pack.scm">stream-pack.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream0.scm">stream0.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">171 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream1.scm">stream1.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">462 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream2.scm">stream2.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">508 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="streamstate.scm">streamstate.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">2.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/text.gif" alt="[TXT]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/why-streams">why-streams</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">381 </td><td>&nbsp;</td></tr>
+   <tr><th colspan="5"><hr></th></tr>
+</table>
+</body></html>
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=N;O=D b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=N;O=D
new file mode 100644
index 0000000..5905ef1
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=N;O=D
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<html>
+ <head>
+  <title>Index of /~bh/61a-pages/Lectures/3.5</title>
+ </head>
+ <body>
+<h1>Index of /~bh/61a-pages/Lectures/3.5</h1>
+  <table>
+   <tr><th valign="top"><img src="../../../../icons/blank.gif" alt="[ICO]"></th><th><a href="index.html?C=N%3BO=A">Name</a></th><th><a href="index.html?C=M%3BO=A">Last modified</a></th><th><a href="index.html?C=S%3BO=A">Size</a></th><th><a href="index.html?C=D%3BO=A">Description</a></th></tr>
+   <tr><th colspan="5"><hr></th></tr>
+<tr><td valign="top"><img src="../../../../icons/back.gif" alt="[PARENTDIR]"></td><td><a href="../../Lectures">Parent Directory</a>       </td><td>&nbsp;</td><td align="right">  - </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/text.gif" alt="[TXT]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/why-streams">why-streams</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">381 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="streamstate.scm">streamstate.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">2.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream2.scm">stream2.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">508 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream1.scm">stream1.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">462 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream0.scm">stream0.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">171 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream-pack.scm">stream-pack.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/stream-memo.scm">stream-memo.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="sieve.scm">sieve.scm</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right">268 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="show-stream.scm">show-stream.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">390 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime2.scm">prime2.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">640 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime1.scm">prime1.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">445 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime0.scm">prime0.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">166 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/ints-from">ints-from</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right"> 76 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="fib.scm">fib.scm</a>                </td><td align="right">2003-04-25 12:52  </td><td align="right">337 </td><td>&nbsp;</td></tr>
+   <tr><th colspan="5"><hr></th></tr>
+</table>
+</body></html>
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=S;O=A b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=S;O=A
new file mode 100644
index 0000000..0f46813
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/index.html?C=S;O=A
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<html>
+ <head>
+  <title>Index of /~bh/61a-pages/Lectures/3.5</title>
+ </head>
+ <body>
+<h1>Index of /~bh/61a-pages/Lectures/3.5</h1>
+  <table>
+   <tr><th valign="top"><img src="../../../../icons/blank.gif" alt="[ICO]"></th><th><a href="index.html?C=N%3BO=A">Name</a></th><th><a href="index.html?C=M%3BO=A">Last modified</a></th><th><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/?C=S;O=D">Size</a></th><th><a href="index.html?C=D%3BO=A">Description</a></th></tr>
+   <tr><th colspan="5"><hr></th></tr>
+<tr><td valign="top"><img src="../../../../icons/back.gif" alt="[PARENTDIR]"></td><td><a href="../../Lectures">Parent Directory</a>       </td><td>&nbsp;</td><td align="right">  - </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/ints-from">ints-from</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right"> 76 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime0.scm">prime0.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">166 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream0.scm">stream0.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">171 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="sieve.scm">sieve.scm</a>              </td><td align="right">2003-04-25 12:52  </td><td align="right">268 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="fib.scm">fib.scm</a>                </td><td align="right">2003-04-25 12:52  </td><td align="right">337 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/text.gif" alt="[TXT]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/why-streams">why-streams</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">381 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="show-stream.scm">show-stream.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">390 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime1.scm">prime1.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">445 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream1.scm">stream1.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">462 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream2.scm">stream2.scm</a>            </td><td align="right">2003-04-25 12:52  </td><td align="right">508 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="prime2.scm">prime2.scm</a>             </td><td align="right">2003-04-25 12:52  </td><td align="right">640 </td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="https://people.eecs.berkeley.edu/~bh/61a-pages/Lectures/3.5/stream-memo.scm">stream-memo.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="stream-pack.scm">stream-pack.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">1.2K</td><td>&nbsp;</td></tr>
+<tr><td valign="top"><img src="../../../../icons/unknown.gif" alt="[   ]"></td><td><a href="streamstate.scm">streamstate.scm</a>        </td><td align="right">2003-04-25 12:52  </td><td align="right">2.2K</td><td>&nbsp;</td></tr>
+   <tr><th colspan="5"><hr></th></tr>
+</table>
+</body></html>
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/prime0.scm b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/prime0.scm
new file mode 100644
index 0000000..ed84766
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/prime0.scm
@@ -0,0 +1,8 @@
+
+
+(define (prime? n)
+  (define (iter factor)
+    (cond ((= factor n) #t)
+          ((= (remainder n factor) 0) #f)
+          (else (iter (+ factor 1)))))
+  (iter 2))
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/prime1.scm b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/prime1.scm
new file mode 100644
index 0000000..35f7a70
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/prime1.scm
@@ -0,0 +1,22 @@
+
+
+(define (prime? n)
+  (null? (filter (lambda (x) (= (remainder n x) 0))
+                 (range 2 (- n 1)))))
+
+(define (range from to)
+  (if (> from to)
+      '()
+      (cons from (range (+ from 1) to))))
+
+
+(define (filter predicate data)
+  (cond ((null? data) '())
+        ((predicate (car data))
+         (cons (car data) (filter predicate (cdr data))))
+        (else (filter predicate (cdr data)))))
+
+
+
+
+;; try (filter prime? (range 2 100))
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/prime2.scm b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/prime2.scm
new file mode 100644
index 0000000..4df4e92
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/prime2.scm
@@ -0,0 +1,22 @@
+
+
+(define (stream-prime? n)
+  (stream-null? (stream-filter (lambda (x) (= (remainder n x) 0))
+			       (stream-range 2 (- n 1)))))
+
+(define (stream-range from to)
+  (if (> from to)
+      the-empty-stream
+      (cons-stream from (stream-range (+ from 1) to))))
+
+(define (stream-filter predicate data)
+  (cond ((stream-null? data) the-empty-stream)
+        ((predicate (stream-car data))
+         (cons-stream (stream-car data)
+		      (stream-filter predicate (stream-cdr data))))
+        (else (stream-filter predicate (stream-cdr data)))))
+
+;; try (define s (stream-filter stream-prime? (stream-range 2 100)))
+;; s
+;; (display-stream s)
+
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/show-stream.scm b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/show-stream.scm
new file mode 100644
index 0000000..e9d42f3
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/show-stream.scm
@@ -0,0 +1,15 @@
+
+(define (show-stream strm . args) ;2nd arg is how many
+  (if (null? args)
+      (ss1 strm 10 10)
+      (ss1 strm (car args) (car args))))
+
+(define ss show-stream)
+
+(define (ss1 strm this all)
+  (cond ((null? strm) '())
+	((= this 0) '(...))
+	((and (pair? strm) (procedure? (cdr strm)))
+	 (cons (ss1 (stream-car strm) all all)
+	       (ss1 (stream-cdr strm) (- this 1) all)))
+	(else strm)))
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/sieve.scm b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/sieve.scm
new file mode 100644
index 0000000..bff92b3
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/sieve.scm
@@ -0,0 +1,10 @@
+(define (divisible? x y) (= (remainder x y) 0))
+
+(define (sieve stream)
+  (cons-stream
+   (stream-car stream)
+   (sieve (stream-filter
+	   (lambda (x) (not (divisible? x (stream-car stream))))
+	   (stream-cdr stream)))))
+
+(define primes (sieve (stream-cdr integers)))
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream-pack.scm b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream-pack.scm
new file mode 100644
index 0000000..826b06c
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream-pack.scm
@@ -0,0 +1,52 @@
+;; review notes for 4/10/98
+;;can you deadlock on this?
+
+(parallel-execute  (exchange-account a b)(exchange-account a c)) ?
+
+
+what do these do:
+
+(define a (cons-stream a a))
+
+(define a (cons-stream 'a a))
+(show-stream a)
+(define a (cons-stream a a))
+(show-stream a)
+
+
+what is the difference between eq?  and equal?
+
+(eq? () '())
+
+
+(pair? ())
+
+;; pack a finite stream with infinite newelements on end
+
+(define (pack-stream s newelement)
+  (if (stream-null? s)
+     (cons-stream newelement(pack-stream s newelement))
+    (cons-stream (stream-car s) (pack-stream (stream-cdr s) newelement))))
+
+;or (buggy)
+
+(define (pack-stream s newelement)
+  (if (stream-null? s) (let ((a (cons-stream newelement a))) a)
+    (cons-stream (stream-car s) (pack-stream (stream-cdr s) newelement))))
+
+
+; or (still buggy)
+
+(define (pack-stream s newelement)
+  (if (stream-null? s) (let ((a nil))
+                             (set! a (cons-stream newelement a)))
+    (cons-stream (stream-car s) (pack-stream (stream-cdr s) newelement))))
+; ok
+
+(define (pack-stream s newelement)
+  (if (stream-null? s) (let ((a nil))
+                         (set! a (cons-stream newelement a))
+                         a)
+      (cons-stream (stream-car s) (pack-stream (stream-cdr s) newelement))))
+
+
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream0.scm b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream0.scm
new file mode 100644
index 0000000..d6f15da
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream0.scm
@@ -0,0 +1,6 @@
+(define (perfect? n)
+  (define (iter i sum)
+    (cond ((= i n) sum)
+	  ((= 0 (remainder n i)) (iter (1+ i) (+ sum i)))
+	  (else (iter (1+ i) sum)) ))
+  (= n (iter 1 0)) )
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream1.scm b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream1.scm
new file mode 100644
index 0000000..58c7061
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream1.scm
@@ -0,0 +1,20 @@
+(define (filter f lis)
+  (cond ((null? lis) nil)
+	((f (car lis)) (cons (car lis) (filter f (cdr lis))))
+	(else (filter f (cdr lis))) ))
+
+(define (accumulate f start lis)
+  (if (null? lis)
+      start
+      (f (car lis) (accumulate f start (cdr lis))) ))
+
+(define (range a b)
+  (if (> a b)
+      nil
+      (cons a (range (1+ a) b)) ))
+
+(define (perfect? n)
+  (= n (accumulate +
+		   0
+		   (filter (lambda (x) (= 0 (remainder n x)))
+			   (range 1 (-1+ n)) ) )))
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream2.scm b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream2.scm
new file mode 100644
index 0000000..75258b0
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/stream2.scm
@@ -0,0 +1,20 @@
+(define (filter f strm)
+  (cond ((empty-stream? strm) nil)
+	((f (head strm)) (cons-stream (head strm) (filter f (tail strm))))
+	(else (filter f (tail strm))) ))
+
+(define (accumulate f start strm)
+  (if (empty-stream? strm)
+      start
+      (f (head strm) (accumulate f start (tail strm))) ))
+
+(define (range a b)
+  (if (> a b)
+      nil
+      (cons-stream a (range (1+ a) b)) ))
+
+(define (perfect? n)
+  (= n (accumulate +
+		   0
+		   (filter (lambda (x) (= 0 (remainder n x)))
+			   (range 1 (-1+ n)) ) )))
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/streamstate.scm b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/streamstate.scm
new file mode 100644
index 0000000..a514f90
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.5/streamstate.scm
@@ -0,0 +1,87 @@
+(define (stream-withdraw balance amount-stream)
+    (cons-stream balance
+                 (stream-withdraw (- balance
+                                     (head amount-stream))
+                                  (tail amount-stream))))
+
+;; a withdrawal stream
+
+(define (wd-stream)(cons-stream (prompt)(wd-stream)))
+
+(define (prompt)(print "new withdrawal -->")(read))
+
+(define mywd (wd-stream))
+
+;;; insert a few values by  (tail(tail (tail mywd)))
+
+;;; (stream-withdraw  100 mywd)
+
+
+(define (for-each-stream proc stream)
+  (if (empty-stream? stream)
+      'done
+      (sequence (proc (head stream))
+                (for-each-stream proc (tail stream)))))
+
+;; print a (finite) stream.
+
+(define (print-stream s)
+  (for-each-stream print s))
+
+(define ps print-stream)
+
+(define (for-each-stream-count  proc stream n)
+  (if (or (= n 0) (empty-stream? stream))
+      'done
+      (sequence (proc (head stream))
+                (for-each-stream-count  proc (tail stream) (+ n -1)))))
+
+(define (psn s n)(for-each-stream-count print s n))
+
+;;;;;;;;;;;;;;;;
+
+;;; TAYLOR SERIES
+;;;  (we could use abstraction better here...)
+;;; a term in a series looks like  (a b) , a list
+;;; signifying  b*x^a
+
+;;   here is the number 1 = 1*x^0
+
+ (define unit-term (list 0 1))   ;; could be (make-term 0 1)
+
+(define (integrate-series series)
+  (map integrate-term series))
+
+;;; to integrate b*x^a with respect to x, produce
+;;; (b/(a+1)*x^(a+1)
+
+(define (integrate-term tt)
+    (let ((new-order (1+ (car tt))))   ;; could use (order tt) instead of car
+      (list new-order (/ (cadr tt) new-order)))) ;; make-term; coeff;
+
+(define exp-series (cons-stream unit-term (integrate-series exp-series)))
+
+;; (- integrate sin) to get cos  (also, cos(0) = 1) 
+
+;; cos x is 1 -x^2/2 + x^4/4! + ..
+
+;;          1 -0.5 x^2 + 0.04166 x^4+ ...
+
+(define cos-series (cons-stream unit-term
+				  (neg-st    (integrate-series sin-series))))
+
+
+;; we  need to compute the negative of a "taylor series stream"
+
+(define (neg-st s)(if (empty-stream? s) s
+		      (cons-stream (list (car (head s))(- (cadr (head s))))
+				   (neg-st (tail s)))))
+
+;;  integrate cos to get sin
+
+(define sin-series  (integrate-series cos-series))
+
+;;; sin x   = x  -x^3/3!+ x^5/5! + ...
+;;;           x - 0.166 x^3 + 0.0083*x^5 + ...
+
+;;(psn sin-series 5)