Environ/Natural Res Econ

Students in this course will explore society’s use of the natural environment as a component of production and consumption. The allocation of exhaustible and renewable resources and the protection of environmental quality from an economic standpoint will be examined. Public policy avenues for controlling natural resource management and the environment will also be explored. Case studies include air pollution and acid rain, depletion of the ozone layer and the greenhouse effect, the solid waste crisis, and deforestation, among others.

Compiler Design

An introduction to the principles of the design of compilers, which are translators that convert programs from a source language to a target language. Some compilers take programs written in a general-purpose programming language, such as C, and produce equivalent assembly language programs. Other compilers handle specialized languages. For instance, text processors translate input text into low-level printing commands. This course examines techniques and principles that can be applied to the design of any compiler.

Computer Systems II

This course will examine the principles and design choices involved in creating the software and hardware systems on which ordinary computer programs rely. It will develop advanced topics in computer processor architecture, cover the design of operating systems and runtime systems, and provide an introduction to programming language compilers. Architectural topics will include pipelines, out-of-order execution, symmetric multithreading, and multi-core cache management.

Data Struct & Algorithms I

This course is the first part of a two-semester sequence examining data structures (ways of organizing data so that it can be used effectively) and algorithms (the methods that can be used to manipulate data). The use of appropriate data structures and algorithms can often dramatically reduce the computational work needed to solve a problem. Topics examined in this course will include proof techniques, run-time analysis, heaps, hash tables, sorting, searching, and divide-and-conquer algorithms.

Subscribe to