Compiler Techniques

Basic problems in the translation of programming languages focusing on theory and common implementation techniques for compiling traditional (Pascal-like) programming languages to produce assembly or object code for typical machines. Involves a substantial laboratory project in which the student constructs a working compiler for a considerable subset of a realistic programming language within a provided skeleton.

Operating Systems

The design and operation of modern computer operating systems. Review of capabilities of typical computer hardware. Topics include command language interpreter (the shell), processes, concurrency, inter-process communication, linking and loading, memory management, transactions, file systems, distributed systems, security, and protection. Programming projects in Java and C.

Operating Systems

The design and operation of modern computer operating systems. Review of capabilities of typical computer hardware. Topics include command language interpreter (the shell), processes, concurrency, inter-process communication, linking and loading, memory management, transactions, file systems, distributed systems, security, and protection. Programming projects in Java and C.

Reasoning Under Uncertainty

Development of mathematical reasoning skills for problems that involve uncertainty. Counting and probability, probabilistic reasoning, Naive Bayes classifiers, Monte Carlo simulation, Markov chains, Markov decision processes, classical game theory, and introduction to information theory.

Computer Systems Principles

Large-scale software systems like Google - deployed over a world-wide network of hundreds of thousands of computers - have become a part of our lives. These are systems success stories - they are reliable, available ("up" nearly all the time), handle an unbelievable amount of load from users around the world, yet provide virtually instantaneous results.

Organic Chemistry

Together with CHEM 262 satisfied requirements for medical school admissions. Acceptable, with approval of the Undergraduate Chemistry Adviser, though not recommended, for chemistry majors. Brief review of basic principles of chemical bonding, electronic theory, and acid-base reactions. Introduction to principles of stereochemistry and organic spectroscopy. Discussions of the most common types of reactions of organic molecules and their mechanisms.

Organic Chem Lab

Experimental organic chemistry with emphasis on underlying physical principles. Separation and purification, synthesis, analysis, and identification of organic compounds, including spectroscopy. Microscale work predominates. Emphasis on safe laboratory practices and proper disposal of wastes. Prerequisite or co-requisite: CHEM 262 or 266.
Subscribe to