| Home | AP Computer Science | Animation Using Virtual Worlds | Intro Java | Programming Concepts | |
| Current Schedule | Favorites | Class(room) Policy | Computing Club | Gunn Girls Tech Club | Send Me Email |
Programming Concepts
Textbook: Simply Scheme, 2nd Edition by Brian Harvey and Matthew Wright. (CH)
Programming Tools: PLT Scheme (DrScheme). The files which go with the book can be found here. (It may take a fair amount of time before for your browser to view this directory of files; once you get through, it may be wise to download all of them.)
Fine Print: The schedule below is subject to change; any updates will be discussed in class and updated here.
| WEEK | TOPIC(S) | READING | HOMEWORK |
| 8/25--8/28 | Showing Off Scheme; Functions | Chapters 1 and 2 | Download PLT Scheme; 1.1*, 1.2*, 2.1, 2.2, 2.3, 2.4, 2.7 (note that the answer to 2.7 contains more than just basic arithmetic functions) Purchase a flash drive (you will need this to back up your homework; any size will do for this class) Save your homework file onto the F drive in the classroom and onto your flash drive; show me that you have done this to get credit for this week's homework * Optional problem |
| 8/31--9/4 | Composition of Functions; Defining Your Own Functions | Chapters 3 and 4 | 3.1 (do the plumbing diagrams by hand, not on the computer), 3.5, 3.6, 3.7, 3.9, 4.1, 4.3, 4.4, 4.5, 4.8 (including the hotshots stuff), 4.10, Boring Quiz |
| 9/8--9/11 | Words and Sentences | Chapter 5 | 5.1, 5.3, 5.9, 5.12, 5.13, 5.15, 5.16, 5.19, 5.21 |
| 9/14--9/18 | Boolean Values (True and False), Variables |
Please make sure to read "Decisions, Decisions, Decisions" on pages 78--80 and "Let" on pages 94--97. |
Chapter 5 Quiz Problem 6.11 starter kit Notes on problem 6.14 Notes on problem 7.1 |
| 9/21--9/24 | Boolean Values (True and False), Variables |
Please make sure to read "Decisions, Decisions, Decisions" on pages 78--80 and "Let" on pages 94--97. |
Finish 6.1, 6.3, 6.4, 6.7, 6.8, 6.11, 6.14, 7.1--7.4
Problem 6.11 starter kit Notes on problem 6.14 Notes on problem 7.1 |
| 9/29--10/2 | Higher-Order Functions | Chapter 8 | Wednesday 10/1: Chapters 1--7 Test Tuesday: Jeopardy review game |
| 10/5--10/9 | Higher-Order Functions |
Chapter 8 |
8.8 (do one more exaggeration--make up your own!--not given in the problem), 8.10, 8.13, 8.14 |
| 10/12--10/16 | Lambda | Chapter 9 Be sure to read pages 134--136. They are helpful in getting a handle on when to use lambda instead of named procedures. |
|
| 10/19--10/23 | Lambda | Chapter 9 Be sure to read pages 134--136. They are helpful in getting a handle on when to use lambda instead of named procedures. |
9.8, 9.10, 9.14, 9.15, 9.17 (this is not a short assignment; if you get stuck, PLEASE come and see me for help) Higher-Order Functions and Intro to Lambda Quiz accumulate pseudo-quiz |
| 10/26--10/30 | Bridge Project | Chapter 9 | Bridge Project (all functions at the end of Chapter 9) Write a possible chapter 8/9 test problem. |
| 11/2--11/6 | Tic-Tac-Toe Project | Chapter 10 | |
| 11/9--11/13 | TBD | Chapter 11 | |
| 11/16--11/20 | Introduction to Recursion; Leap of Faith | Chapters 11 and 12 | 11.1, 11.2, 11.3, 11.5, 11.6, 11.7, 12.2, 12.4, 12.5, 12.7 Extra Credit: 12.12* (this is really the most interesting problem in the chapter, so it is worth extra credit) Friday: Intro to Recursion Quiz |
| 11/23--11/24 | How Recursion Works; Common Patterns in Recursive Procedures | Chapters 13 and 14 | |
| 11/30--12/4 | How Recursion Works; Common Patterns in Recursive Procedures | Chapters 13 and 14 | |
| 12/7--12/11 | Advanced Recursion |
Chapter 15 |
How the decimal to binary algorithm works; Note that while the code part is in C++, the process is in the table and is the big idea here. % is the remainder function in C++. 15.1--15.4; it is OK to use one accumulate in problem 15.2 Here are some functions to help get you started. Here is a solution to the project. Extra Credit: 16.2--5, 16.7, 16.9, 16.10, 16.15--16.21 (Chapter 16 stuff is time-consuming; there is a reason it is listed as extra credit and not part of the main homework) |
| 12/14--12/18 | Lists | Chapter 17 Notes on the list abstraction |
Chapters
1--15 Test, Wednesday, December 16 Solution to the toBinary problem (15.1) 17.1, 17.2, 17.3, 17.8--17.12, 17.14 Quiz on list functions |
| 12/21--12/25 | Vacation | Sleep | Loafing or working on the Mastermind project |
| 12/28--1/1 | Vacation | Eating, Occasional Getting Up The Energy To Do Something Such As Perhaps Watching TV | eXtreme Loafing (please do get some rest) |
| 1/4--1/8 | Trees Input and Output Extra Credit: Vectors NOTE: The final will not include chapter 23. Homework and extra credit problems will be accepted up to, but not after Friday, January 15. |
Chapter 18 Chapter 20
Chapter 23
|
Solution to the flatten problem 20.1--3, 20.5, 20.9, the number guessing game More extra credit: 23.2, 23.3, 23.14 (complete the abstraction by writing make-matrix, matrix-ref, matrix-size (should return a list of the number of rows and number of columns), and matrix-set!), 23.13, 23.12 (this order of problems is the order in which I would choose to do them). Even More extra credit: Do the spreadsheet problems: 24.1, 24.2, 24.3, 25.1--25.12 |
| 1/11--1/15 | Trees Input and Output Extra Credit: Vectors NOTE: The final will not include chapter 23. Homework and extra credit problems will be accepted up to, but not after Friday, January 15. |
Chapter 18 Chapter 20
Chapter 23
|
Solution to problem 18.3, the tree depth problem Solution to the flatten problem 20.1--3, 20.5, 20.9, the number guessing game More extra credit: 23.2, 23.3, 23.14 (complete the abstraction by writing make-matrix, matrix-ref, matrix-size (should return a list of the number of rows and number of columns), and matrix-set!), 23.13, 23.12 (this order of problems is the order in which I would choose to do them). Even More extra credit: Do the spreadsheet problems: 24.1, 24.2, 24.3, 25.1--25.12 |
| 1/19--1/21 | Finals: Chapters 1--15, 17, 18 | Solution to Mastermind game; Solution to problem 23.14 | A Period Final Wednesday, January 20, 8:00am--9:40am B Period Final Tuesday, January 19, 8:30am--10:10am |
Readings are due each Monday. Homeworks and projects are due AT THE BEGINNING OF CLASS on the following Monday unless it is a holiday. In that case they are due the first class period after the holiday.
Example: Chapters 1 and 2 should be read by Friday, 8/28. Chapters 3 and 4 should be read and the programming problems for chapters 1 and 2 should be done by Monday, 8/31, so we can move forward promptly. Problems for chapters 3 and 4 are due on Monday, 9/7 as that is the first day of class that week.
Unexcused late homework, projects, quizzes, and tests will be given a score of zero. If you expect to have problems meeting a deadline, I need to know about it in advance. Excuses after the fact will be given zero tolerance, barring a note signed by parents.