In the first two months of the class, Prof. Harvey is examining functional programming with LISP. To follow along, I am using Clojure. Installing on OSX amounts to 'sudo port install clojure'. The clojure command line is accessed by the clj command. As noted in the lecture, it is easy to write interpreters. The class uses scheme, so I need a scheme interpreter for clojure.
In order to describe the foundations of computer programming, Prof. Harvey wrote the following during his second lecture:
Topic | studied in... |
Application Program | CS 61A |
High level language (Scheme) | CS 61B |
Low Level Langauge (C) | CS 61C |
Machine Langauge/architecture | ... |
circuit elements | EE |
transistors | applied physics |
solid state physics | Physics |
Quantum Mechanics | Physics |
This ties in rather naturally with the OSI Seven Layer Model.
This class is presenting a 'real world' view of computer science, not computer science as applied mathematics. As with the physical sciences and engineering, mathematics is the language, not the subject in CS. This is not meant to be a put down of math.
In the first lecture, he gave a concise explanation of 'function' vs. 'procedure'. I am going to enjoy these lectures...
No comments:
Post a Comment