Changing Minds
I recently finished reading Andrea diSessa’s Changing Minds: Computers, Learning, and Literacy. My work on Madeup had me reading many books that mentioned this book, and I spent a good deal of time in diSessa’s earlier Turtle Geometry. So, it was only a matter of time before I read Changing Minds. In it, physicist diSessa […]
CS 330 Lecture 36 – Object-oriented Programming
Agenda what ?s the pillars of OOP hello, C++ member initialization lists RAII overloading builtin operators << vs. printf TODO Investigate object-oriented criticism by searching the internet. On a 1/4 sheet, identify at least three objections that people raise against it. Do you agree or disagree? (Remember, this is the internet, where thinking before typing […]
CS 330 Lecture 35 – Call by Name, Call by Need Cont’d
Agenda what ?s debug macro until loop in Scala lazy data structures Note Last time we looked at pass-by-name, which eschews the eager evaluation that we run into in many languages and instead delays evaluation to the point of reference. Sometimes pass-by-name is really useful. Suppose we wanted to write a debugging function that printed […]
CS 330 Lecture 34 – Call by Value, Name, and Need
Agenda what ?s C preprocessor pass by name pass by need lazy evaluation TODO Regex talk tonight! Register here. Note We begin with an exercise that will help us understand the C preprocessor a little better. For each of the following code snippets, write down what you expect the result to be. We’ll go through […]
CS 330 Lecture 33 – Fold
Agenda what ?s program this bring * into the fold fold1 TODO Attend the CV Dev group meeting on Wednesday. Brad Candell of Group Health is speaking on regular expressions. Pizza at 5 PM, talk at 6 PM. They ask you to register so they can order enough pizza. See the Piazza post. Start the […]
CS 330 Homework 5 – Wasd – due before May 16
See the PDF.
Honors 104.502 Homework 3 – Final
See the PDF.
HNRS 104.502 Lab 7 – Tyrannosaurus Rex
In this lab we’ll create a reasonably sophisticated model that invokes many of the common box modeling operations. But first, if you didn’t get your work from last lab checked off, do so in the first 15 minutes of this lab. Checkpoint 1 Model a tyrannosaurus rex as described here. Checkpoint 2 Read the specification […]
CS 330 Lecture 32 – Memoization and Folds
Agenda what ?s memoization in C++ the fold pattern TODO Funfun before Monday! The thingies have been pretty unreliable lately. If you are on Windows, I really recommend getting >=4 GB USB drive and installing Linux on it. The last assignment will require JRuby again. (You can run this stuff on Windows too, but you […]
CS 491 Homework 3 – Final
See the PDF.