Courses

Computer Science Courses

1101.  Unix and Systems Administration. Fundamentals of the Unix operating system and topics relevant to managing a Unix network.

1410.  Introduction to Computer Science. Introduction to the design of programs and algorithms and the fundamental ideas and concepts of computer science, with emphasis on the development of problem solving strategies and good programming style using functional languages. Lists, structures, contracts, unit tests. Fall.

2102.  Other Programming Languages. May be repeated. Covers programming languages such as Perl, C, C++, Ruby, Python, etc.  Prerequisite: MCS 1410.

2103.  Computing Practicum. May be repeated. Topics chosen according to interests of students and instructors, e.g. debugging tools, GUI design. Prerequisite/Co-requisite: MCS 1410.

2315 -2316 . Discrete Structures I and II. The foundations of computer science: fundamental data structures and algorithms, mathematical models and methods, logic and proof. Design of structures and algorithms in an object-oriented language. Induction, recursion, and running time; combinatorics and probability; trees, lists, sets, and graphs; relational data; patterns and regular expressions; grammars and parsing. Spring (2315) and Fall (2316).

3311.  Theory of Computation. Abstract models of computing machines and the data they process are developed. These are used to study the theoretical limitations of what they can achieve. The ultimate goal is to develop a sufficiently general model of computation where one may discover universal laws that govern all programming languages together with the computing machines which may be built to interpret them. The topics covered are the theory of automata, formal languages, computability by Turing machines, and Church's thesis. Proofs are required. Prerequisite: MCS 2316 or consent of instructor.

3312.  Analysis of Algorithms. A mathematical study of the complexity of fundamental algorithms in computer science. Prerequisite: MCS 2316.

3317.  Computer Organization. Hardware design methods in particular formal models of simple register machines are developed and then used to study program interpretation and compilation techniques. Some topics in storage allocation such as garbage collection and maintaining the illusion of infinite memory are also discussed. A sizable programming project is required. Prerequisite: MCS 2316.

3352. Programming Languages. Study of the fundamental principles in the design and implementation of programming languages. Study includes the mathematical theory behind these principles and students must be comfortable with proofs. Topics include the substitution model, hierarchical structures, the environment model, metalinguistic abstraction, and memory representation. Students write their own language interpreter. Prerequisite: MCS 2316.

3451.  Operating Systems and Concurrent Programming. A survey of the issues involved in the design and implementation of modern timesharing, multitasking systems. Topics covered include scheduling algorithms, synchronization problems, memory management, and file management. Students partially write their own operating system. Prerequisite: MCS 2316.

3V57.  Internship. Graded Pass/No Pass.

4410.  Compiler Design. Exploring the issues related to the design and implementation of programming language translators including formal grammars and parsing, semantic definitions and semantic processing, run-time storage management and symbol tables, error recovery, code generation, and as time permits optimization of compiled code. Students write a significant amount of a compiler on their own, a large and complex coding project.

4350.  Special Topics in Computer Science.

4V43.  Research in Computer Science.

4V61. Independent Studies. An opportunity for the student to examine in depth any topic within the field under the guidance of the instructor. For advanced students.

News

You Can Do What with a (Spanish) Degree?

His first step was to enroll in physician’s assistant school at Baylor’s College of Medicine, a career trajectory to which he had aspired since his early childhood. Nowadays, Jonathan Cunningham, BA ’17, is dedicated to the vocational pursuit of comfort and healing at MD Anderson in Houston, among the largest cancer treatment centers in the U.S., where he was once a chemotherapy patient himself.

+ Read More

History Alumnus Heads National Catholic Bioethics Center

During his Rome semester in 1991, Joseph Meaney, BA '93, with his friends (now Father) Kevin Cook, BA '94, and (now Texas State Representative and UD Trustee) Tan Parker, BA '93, attended a private Mass with Pope St. John Paul II. Several weeks earlier, they had hand-delivered a letter to the Swiss Guards outside St. Peter's requesting the Mass and including their contact information; at last, they'd received the phone call instructing them to be at the Bronze Gates at 5 a.m.

+ Read More