Edit WYSIWYGattachfile Attach PDF Raw View►More Actions▼More Actions

Restore topic to revision: You will be able to review the topic before saving it to a new revision

Copy text and form data to a new topic (no attachments will be copied though).
Name of copy:
You will be able to review the copied topic before saving

Rename/move topic... scans links in all public webs (recommended)
Rename/move topic... scans links in UMMCSci/CSci1301f11 web only
Delete topic... scans links in all public webs (recommended)
Delete topic... scans links in UMMCSci/CSci1301f11 web only

Revision Date Username Comment
825 Aug 2011 - 19:58NicMcPhee 
724 Aug 2011 - 18:20NicMcPhee 
623 Aug 2011 - 21:48NicMcPhee 
521 Aug 2011 - 21:05NicMcPhee 
421 Jan 2009 - 10:47DrewStevenson 
330 Sep 2008 - 13:07DrewStevenson 
225 Aug 2008 - 16:46ElenaIvanova 
126 Jun 2008 - 11:31DennisSvendsen 

Render style:     Context:

 History: r8 < r7 < r6 < r5 < r4
[X] Hide this message.
Notice: On June 30, 2016, UMWiki service will be decommissioned. If you have information in UMWIki that needs to be preserved, you should make plans to move it before that date. Google Sites is anticipated to be the most popular and appropriate alternative for users because it offers a more modern and user-friendly interface and unlimited capacity. To learn more about the features of Google Sites and other alternatives, and to identify which one best fits your needs, see the University’s Website Solution Selection Guide. If you have concerns or would like help regarding this change and your options, please contact Technology Help at help@umn.edu
You are here: UMWiki>UMMCSci/CSci1301f11 Web>WebHome (25 Aug 2011, NicMcPhee)

Welcome to the UMMCSci/CSci1301f11 Web!

HeadlinesPlugin ERROR: 501 Protocol scheme 'https' is not supported (LWP::Protocol::https not installed)

Major links


This, like all meaningful plans, is subject to change as the course develops. Readings are listed on the day that we'll cover that material; you should be reading ahead so you're prepared for that day's discussion.

ALERT! Ashley Koch, one of our two TAs for this course, will be in the CSci Lounge every Monday from 7-8pm to help with homework, labs, and other related work in CSci 1301. She's a great resource, and I highly encourage you to take advantage of this opportunity.


Week Monday Wednesday Friday
24-26 August   Syllabus review. Introduction. Course overview, course policies.

Role of computing and problem solving in the modern world.
Visit from ACM/CSci Club officers.

Notion of an algorithm and a program.

Reading: Ch. 1, 2.1, 2.2.
29 Aug-2 Sep Introduction to DrRacket.
Problem solving using Racket.

The use of check-expect for testing.

The interpretation of error messages.

Problem set 1: Introduction to DrRacket. Due Wed, 7 Sep 2011
Using DrRacket in the lab: Lab 0

Problem solving using Racket (cont.).

Reading: Ch. 2.3, 2.4, 2.5.
Functions and variable definitions.

Sec. 3.1 is really good, but leaves out 1 important point IMHO.

Reading: Ch. 3.

Lab 0 due.
5-9 Sep Labor day Functions, arguments, and scope.

Problem set 1 due.

Problem set 2 Functions: and variable definitions Due Wed, 14 Sept 2011
Conditional expressions and functions.

Reading: Ch. 4.
12-16 Sep
Lab 1: Functions and conditionals.

Conditional expressions and functions (cont.).
Symbolic information.

Reading: Ch. 5.

Problem set 2 due

Problem set 3: Conditional expressions and symbolic information Due Wed, 21 Sep 2011
Compound data.

Reading: Ch. 6.
19-23 Sep Compound data (cont).
Lab 2: Animated cartoons

Mixed data.

Reading: Ch. 7, Intermezzo 1.

Problem set 3 due

Problem set 4: Data handling in Racket Due Wed, 28 Sep 2011
Structures (cont.)
26-30 Sep Lab 2 due This got moved to Friday, 30 Sep.

Brief discussion of open vs. proprietary data formats. (Read "Four reasons not to use proprietary formats" for more.) (We'll do this later.)
Intermezzo 1 (programming languages syntax and semantics).

Problem set 4 due

Problem set 5: Syntax and semantics Due Tue, 4 Oct 2011
Lab 2 due

Problem set 4 due

Intermezzo 1 (cont.)


Reading: Ch. 9, 10.


Week Monday Wednesday Friday
3-7 Oct Natural numbers, composing functions.

Reading: Ch. 11, 12

Review for Midterm I.

Problem set 5 due Tues, 4 Oct.
Midterm I (in-class portion)

Take home exam I posted, due Mon, 10 Oct 2011.
Lists, natural numbers

Reading: Intermezzo 2.
10-14 Oct Self-referential data definitions.

Reading: Ch. 14.

Take home I due

Problem set 6: List processing. Due Wed, 19 Oct 2011.
Mutually referential data definitions.

Reading: Ch. 15.
Development through iterative refinement.

Reading: Ch. 16.
17-21 Oct Fall Break Local definitions and lexical scope.
Abstracting designs

Reading: Intermezzo 3, Ch. 19, 20.

Problem set 6 due

Problem Set 7: Abstracting designs. Due Wed, 26 Oct 2011.

Problem Set 6 due
Abstracting designs (cont.)

Designing Abstractions from examples.

Reading: Ch. 21.
24-28 Oct Designing abstractions with first-class functions.

Reading: Ch. 22, 23.
Defining functions on the fly.

Reading: Intermezzo 4.

Problem set 8: Processing multiple data structures. Due Wed, 2 Nov 2011.

Problem set 7 due.
Generative recursion.

Reading: Ch. 25, 26.


Week Monday Wednesday Friday
31 Oct-4 Nov Generative recursion.

Reading: Ch. 27.
Lab 3 Binary Search Trees

Backtracking algorithms.

Reading: Ch. 28.

Problem set 8 due

Problem set 9: Functions as values. Due Mon, 21 Nov 2011.
Lab 3 Binary Search Trees due

Efficiency considerations.

Reading: Intermezzo 5.
7-11 Nov Discussion: recursion as a problem-solving approach.

Review for Midterm II.
Midterm II (in-class portion).

Take home exam II posted. Due Mon, 14 Nov 2011.
Accumulator-style functions.

Reading: Ch. 30, 31.
14-18 Nov Accumulator-style functions (cont.)

Reading: Ch. 32.

Take home exam II due
Accumulator-style functions (cont.) Assignments to variables.

Reading: Ch. 34, 35.
21-25 Nov Functions with memory.

Reading: Ch. 36.
Problem set 9 due.

Problem set 10: project (making a small interactive game). Due Wed, 7 Dec 2011.
Memory usage.

Syntax of Advanced Scheme.

Reading: Ch. 37, intermezzo 7.
28 Nov-2 Dec Differences between functional and imperative languages.

Introduction to Clojure.
Project help in the lab.
Introduction to Clojure (cont.).
5-9 Dec Introduction to Clojure (cont.). Game presentations (day 1)

Problem set 11 due
Game presentations (day 2)

Review for the final.

ALERT! Absolutely last day to submit all late problem sets!

The scheduled finals period for this class is 8:30-10:30am, Monday, 12 Dec 2011. If we have a take-home final, it will be due at the end of that scheduled finals period.

This course schedule owes a huge debt to Elena Machkasova, whose previous experience teaching with How to design programs was broke most of the sod for me.

-- NicMcPhee - 21 Aug 2011

Topic revision: r8 - 25 Aug 2011 - 19:58:53 - NicMcPhee
UMWiki UMWiki
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding UMWiki? Send feedback