MIME-Version: 1.0
Server: CERN/3.0
Date: Wednesday, 20-Nov-96 20:11:11 GMT
Content-Type: text/html
Content-Length: 7699
Last-Modified: Friday, 29-Sep-95 20:09:49 GMT
Cornell CS Course Home Pages Fall 1995
Course Home Pages
These are links to the home pages for a number of CS courses.
In many cases there are class notes, problem sets, and other course
information available, although they may only be available to registered
members of the course.
-
-
Intermediate programming in a high-level language and introduction
to computer science. Topics include program development, proofs
of program correctness, program structure, recursion, abstract
data types, data structures, and analysis of algorithms. Pascal
is the principal programming language.
-
-
A challenging introduction to programming languages and computer
science. Topics include recursive and higher-order procedures,
performance analysis of algorithms, proofs of program correctness,
probabilistic algorithms, symbolic hierarchical data, abstract data
types, polymorphic functions, object-oriented programming, infinite
data types, simulation, and the interpretation and compilation of
programs.
-
-
An introduction to Unix operating systems and their
programming environments. This is a six week course, divided into
two parts. In the first three weeks, we cover the architecture of
Unix operating systems and the C language at a high level. The second
three weeks center around a programming project that is intended
to demonstrate the issues of crafting programs in C on Unix.
-
-
Web course material includes course info, lecture notes, homeworks,
project info, and hopefully even lecture videos.
Topics covered in the course include: representation of
information; machine/assembly languages, in particular PowerPC;
processor organization; interrupts and I/O; memory hierarchies;
combinatorial and sequential circuits; data path and control
unit design; RTL; and microprogramming.
-
-
This course covers the techniques and technologies used in modern
software development. It involves a good deal of programming
and development experience, and tries to simulate the life of
professional programmers. Topics include the C++ language,
Object-oriented programming, software design issues, classical
software engineering, and collaborative programming.
-
-
Lists, trees, graphs, arrays, and other forms of data structure and
their implementation. Relationship between language and data
structure, emphasizing abstract data types. Dynamic storage
allocation and memory management. Detailed study of searching and
sorting methods. Analysis to determine the more efficient algorithm
in a given situation.
-
-
The practical aspects of operating systems are studied through
the design and implementation of an operating system kernel that
supports multiprogramming, virtual memory, and various input-output
devices. All the programming for the project is in a high-level
language.
-
-
A challenging introduction to the major subareas and current research
directions in artificial intelligence. Topics include knowledge
representation, search, problem solving, natural-language processing,
vision, robotics, logic and deduction, planning, and machine learning.
-
-
An introduction to the modern theory of computing: automata theory,
formal languages, and effective computability. A faster-moving
and deeper version of CS381. Credit will not be given for both.
Corrective transfers between CS381 and CS481 are encouraged during
the first few weeks of instruction.
-
-
The course introduces and relates the operational, denotational,
and axiomatic semantics of model programming languages for
imperative, applicative, algebraic, and logic programming.
-
-
An investigation of the computer science issues related to multimedia
systems. Topics include: coding and compression, storage systems,
high-speed networking, video/audio processing, user interface issues,
and databases for multimedia.
-
-
Methodology for developing efficient algorithms, primarily for
graph theoretic problems. Understanding of the inherent complexity
of natural problems via polynomial-time algorithms, randomized
algorithms, NP-completeness, randomized reducibilities. Additional
topics such as parallel algorithms and efficient data structures.
-
-
This course will survey the latest (and coolest) software and hardware
applications, systems, and tools with an emphasis on practical use of
the tools. Each seminar will present a tutorial style introduction to
one of the topics.
-
-
Covers advanced topics in computer graphics and applications
of computer graphics to scientific computation.
-
-
Covers current topics in natural language understanding, computational
linguistics, and relevant areas of machine learning. Meets once a
week for 1-2 hours to present and discuss recent papers in the field
as well as ongoing natural language understanding research in the
department.
Information from previous semesters
Information from previous semesters may be retained for a while, but don't be surprised if certain links don't work.
- Fall 1994
- Spring 1995
- Summer 1995