CSC302 2011S Programming Languages : Handouts

Introductory Survey Stuff

Sam's Survey Responses

a. What is your name?

Samuel Alexander Rebelsky. I go by SamR.

b. What is your major (or intended major)?

I was a mathematics major as an undergraduate. I was a graduate student in computer science.

c. Who is your academic advisor?

I don't remember. I saw her for five minutes each registration period.

d. What courses are you taking this term? Please include meeting times. I prefer course names to course abbreviations, although you should feel free to include abbreviations in addition to names.

I am teaching CSC 302 (Programming Langugages) at 9 am MWF and CSC 161 (Imperative Problem Solving and Data Structures) at 11 am MTuWF. I am taking Bowling WF 4-5 pm.

e. What is your favorite thing that you've learned in computer science?

Higher-order programming. Quicksort is a close second.

f. What do you hope to learn or gain from this course?

I hope to learn more programming languages, and perhaps a few more concepts.

g. What are your biggest concerns for the course?

Writing a lab each day is hard. Dealing with reading responses is hard. I'm worried that I'll fall behind.

h. What programming languages do you know?

I've taught courses that focus on: C, Scheme, Perl, Python, Java, Pascal, and SQL.

I've written textbooks on Java and Scheme. I'll probably end up writing one on C to match the way I teach that course.

I've written fairly large programs (i.e., things someone might use regularly) in C, Java, Scheme, Perl, Haskell, Hypertalk, and T.

In the programming langauges course, I've also taught FP, ML, Prolog, a bit of C++.

I once took a course in APL.

I've played around with a bunch of other languages, including AWK, various shells, Ruby, Tcl/TK, LISP, my advisor's strange Equational Programming Language, and others I've forgotten.

i. For each of the following, indicate your level of knowledge (e.g., Don't know it at all, Know it fairly well, Probably know it better than Sam).

The map procedure in Scheme.
Higher-order programming in Scheme.
Continuations in Scheme.
Generics in Java.
Anonymous inner classes in Java.
Reflection or introspection in Java.
The C Programming Language.

I know all of these things well enough to teach them. I bet I can outprogram most people in C. I haven't done deep programming with continuations or Java reflection, and both are a little rusty.

j. Most surveys like this ask you to list your five favorite books, movies, TV shows, CDs, chia animals, buildings on campus, professors, or whatever. I'll give you a little more freedom. Pick a category of objects (it can be one that I listed, it can be one that I didn't list), and list your five favorite objects in that category.

Objects in my office (in no particular order). Steel sculptures that once illustrated a plane parallel to a conic section. (Some day I'll rethread them, although I've been saying that for twenty years.) Pictures of my kids. The sword from a marlin that my father harpooned. Artificial flowers that everyone who walks in my office thinks are real. My mother's "Psychology Teacher of the Year" award. The 1966 Grinnell College yearbook (banned at the time it was made; not released until 1991 or so). Yes, I know that's six. Deal.

k. What else should I know about you?

I'm among the least organized people you'll ever meet. I tend to be quite behind in my work.



Sunday, 30 January 2011 [Samuel A. Rebelsky]

  • Created.


Disclaimer: I usually create these pages on the fly, which means that I rarely proofread them and they may contain bad grammar and incorrect details. It also means that I tend to update them regularly (see the history for more details). Feel free to contact me with any suggestions for changes.

This document was generated by Siteweaver on Mon Mar 7 08:59:58 2011.
The source to the document was last modified on Sun Jan 30 19:52:14 2011.
This document may be found at

You may wish to validate this document's HTML ; Valid CSS! ; Creative Commons License

Samuel A. Rebelsky,