CS 2130 - PowerPoint PPT Presentation

About This Presentation
Title:

CS 2130

Description:

Office Hours: Tuesday/Thursday 4:30 - 6:00 and by appointment. Jim Greenlee ... Warren Gay. Note: There are two indexes. Textbooks ... – PowerPoint PPT presentation

Number of Views:30
Avg rating:3.0/5.0
Slides: 34
Provided by: ble87
Category:
Tags: gay

less

Transcript and Presenter's Notes

Title: CS 2130


1
CS 2130
  • Lecture 1
  • Course Introduction

2
Agenda
  • Course Mechanics
  • Prerequisites
  • Instructors
  • Textbooks
  • Course Components
  • Assignments
  • Policies
  • Evaluation
  • Course Overview
  • Syllabus
  • Languages Translation
  • Programming Environment
  • Friendly/Fatherly Advice

3
Course Mechanics
4
Prerequisites
  • CS 1501/1311/1321 Introduction to Computing
  • Pseudocode
  • Scheme
  • Intro to OO
  • Equivalent
  • CS 1502/1312/1322 Introduction to Object Oriented
    Programming
  • Java
  • Intro to C

5
Instructors
  • Bill Leahy
  • Email bleahy_at_cc.gatech.edu (Don't duplicate)
  • Office Hours Tuesday/Thursday 430 - 600 and by
    appointment
  • Jim Greenlee
  • Email jkg_at_cc.gatech.edu
  • Office Hours Tuesday/Thursday 930 - 1100 and
    by appointment

6
Textbooks
  • Languages and Translation
  • Pearson Custom Publishing
  • Available from Engineers
    Bookstore
  • Notes taken from
  • Efficient C Programming
  • Mark Allen Weiss
  • Advanced Unix Programming
  • Warren Gay

Note There are two indexes
7
Textbooks
  • Compiler Construction Principles and Practice by
    Kenneth C. Louden
  • PWS Publishing Company, 1997 (now a part of
    Brooks/Cole) ISBN 0-534-93972-4
  • If this is not available dont
  • worry. We wont use it for a
  • while.

8
Optional Book
  • lex yacc (2nd Edition)
  • Levine, et al
  • OReilly Associates
  • Probably not worth buying just for this class -
    borrow it if you can

9
Course Components
  • Lecture Tuesday, Thursday
  • Jim Greenlee 805 - 925
  • Bill Leahy 1205 - 125
  • Theory, big picture
  • Questions always welcome
  • Recitation Per Oscar Schedule
  • Contact time with TA's
  • TA's review common mistakes
  • Ungraded quiz
  • Lab Per Oscar Schedule STARTS THIS WEEK!!!
  • Coding Questions
  • Hands on

Oscar says next weekbut go to a lab this week!!!
Preferably your own.
10
Policies
  • You are expected to attend lecture, recitation
    and lab
  • Students scheduled for lecture have priority for
    seating
  • Must attend scheduled recitation and lab unless
    prior arrangements have been made (see
    Administrative Information document posted
    on-line)
  • Courtesy
  • No cell phones
  • No beepers
  • Be on time
  • No whispering
  • No alarms

11
Resources
  • Newsgroups
  • git.cc.class.cs2130.announce
  • git.cc.class.cs2130.questions
  • git.cc.class.cs2130.homeworks
  • git.cc.class.cs2130.labs
  • Useful Documentation Files (On Acme)
  • cs2130/pub/docs
  • Course Management Software (On Acme)
  • workon cs2130
  • printdoc

12
Co-Web
  • http//swiki.cc.gatech.edu8080/cs2130
  • Lots of stuff there from previous semesters
  • This semester's stuff available "soon
  • Diary akbar_at_cc

13
Evaluation
  • Homework (Collaboration) 5
  • Labs 20
  • Project 15
  • Tests (2 _at_ 15) 30
  • Final 30
  • Total 100

14
Course Overview
  • C Programming
  • Language Translators Interpreters Introduction
  • Language Translators Interpreters Advanced

15
SyllabusPreliminary Subject to Change
  • C PROGRAMMING
  • Expressions and Operators
  • C Programming Structures
  • C Preprocessor
  • Storage Classes
  • Pointers and Arrays
  • Stack Frames
  • Dynamic Allocation
  • Strings
  • Structs and Unions
  • C Data Structures

16
SyllabusPreliminary Subject to Change
  • LANGUAGE TRANSLATORS INTERPRETERS -
    INTRODUCTION
  • Formal Language Concepts
  • Regular Expressions
  • Finite State Automata
  • Scanner Generators
  • Top-Down Parsing
  • Bottom-Up Parsing
  • Attribute Grammars
  • Symbol Tables
  • Parser Generators
  • Optimization

17
SyllabusPreliminary Subject to Change
  • LANGUAGE TRANSLATORS INTERPRETERS - ADVANCED
    TOPICS
  • Data Types
  • Functional Programming
  • Functional Optimizations
  • Floating Point Implementation
  • Heap Implementation
  • Garbage Collection
  • Class Object Implementation

18
SyllabusPreliminary Subject to Change
  • Additional Possibilities
  • Variable arguments to functions
  • Adding/subtracting/multiplying/dividing of floats
  • Implementation of polymorphism and inheritance

19
Official Syllabus
  • Will be posted to .announce newsgroup
  • git.cc.class.cs2130.announce
  • Also on the Co-Web

20
Languages Translation
  • Learn C Programming Language
  • Portability
  • Systems programming capable
  • Widely used in Ga Tech CoC
  • Gets close to machine
  • Translation Interpretation
  • Heart of computer science
  • Key concept
  • Widely used

21
Programming Environment
  • All programs written and tested in a "UNIX-like"
    programming environment
  • UNIX written "by programmers, for programmers"
  • Support for C programming
  • Good software tools
  • Crash-resistant
  • 100 DOJ-approved!
  • UNIX never the subject in anti-trust lawsuit

22
What flavors of UNIX?
  • Officially supported platforms (programs will be
    tested and graded here)
  • Solaris
  • Red Hat 7.1 Linux
  • Available in CoC labs, or install at home

23
What flavors of UNIX?
  • Unofficially supported (may be used for some
    development work, but test it on an "official"
    platform before turning in!)
  • Mac OS X
  • Cygwin on Win 9x/NT/2000
  • Install at home

24
Installing Software
  • Installing Solaris
  • Intel version (x86) can be downloaded free
  • http//www.sun.com/software/solaris/binaries/
  • Not recommended unless you enjoy pain
  • Installing Redhat 7.1
  • Most accurately duplicates lab environment
  • Requires separate disk drive or partition (back
    up your hard disk!)
  • Free CDs available from Linux Users Group (LUG)
  • http//www.lugatgt.org/
  • Or download from Georgia Tech Linux FTP site
  • ftp//ftp-linux.cc.gatech.edu/pub/Linux/index.html

25
Installing Software (cont)
  • Installing Mac OS X
  • Easiest to install for Mac users (uses existing
    disk partition)
  • Greenlee likes it (good for brownie points)
  • If you are a Mac user, you will have to get it
    eventually anyway, so why not start now?
  • Disadvantage only one that's not free -(
  • Installing Cygwin
  • Easiest to install for Windows users (uses
    existing disk partition)
  • Two versions
  • Command Line http//sources.redhat.com/cygwin/
  • X Windows http//sources.redhat.com/cygwin/x
    free
  • Disadvantage Greenlee will make fun of you for
    using Windows

26
Why Linux and Solaris
  • Installing and running Linux (i.e being the
    system administrator) is a very valuable
    experience
  • Solaris will find errors that Linux will not find
  • Good practice for real world

27
Requirements for Assignments
  • All programming assignments must
  • compile cleanly (i.e. no warnings or errors) with
  • gcc -Wall -O2 -ansi -pedantic
  • lint cleanly where appropriate (Solaris)
  • exit gracefully
  • produce useful output where applicable
  • Capital crimes ( automatic 0)
  • non-compiling or non-linting programs
  • core dumps (or any ungraceful exit)
  • infinite loops
  • excessive spurious output
  • More details in Administrative Information
    document

28
Course Philosophy
  • Self-reliance
  • CS 1/CS2 offer certain amount of hand-holding
  • This is the first "real" CS/CmpE Course
  • Preparation for real world
  • Figure it out!

29
Chain of Command
  • Textbook
  • Online Manuals (RTFMP)
  • Web Search Engine
  • Newsgroups
  • TA
  • Jim Greenlee
  • Textbook
  • Online Manuals (RTFMP)
  • Web Search Engine
  • Newsgroups
  • TA
  • Bill Leahy

30
Keys to Success
  • Do all assigned work
  • Slackware is just a catchy name
  • Start early
  • Use the resources
  • Remember This is Computer Science not Rocket
    Science
  • Debugging is 90 psychological

31
Origins
  • War and Ballistics
  • Stored Program Computer
  • Mechanizing Program Translation

32
PDP - 11
LDA EXM CONT HLT STRT DEP
ENB
33
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com