September 7, 2004 1 Concepts of Programming Languages Hongwei Xi Comp. Sci. Dept. Boston University.

Slides:



Advertisements
Similar presentations
SHS HUMANITIES ENGLISH, SOCIAL STUDIES, WORLD LANGUAGES COURSE SELECTION 2013.
Advertisements

Intro to CIT 594
CS112: Course Overview George Mason University. Today’s topics Go over the syllabus Go over resources – Marmoset – Blackboard – Piazza – Textbook Highlight.
Introduction to programming with Visual Basic.NET Dr. Marty Sirkin.
CS 581: Introduction to the Theory of Computation Lecture 1 James Hook Portland State University
Intro to CIT 594
Intro to CIT 594
June 13, Introduction to CS II Data Structures Hongwei Xi Comp. Sci. Dept. Boston University.
Fall 2004 WWW IS112 Prof. Dwyer Intro1: Overview and Syllabus Professor Catherine Dwyer.
January 12, Compiler Design Hongwei Xi Comp. Sci. Dept. Boston University.
January 19, Compiler Design Hongwei Xi Comp. Sci. Dept. Boston University.
CSC 212 – Data Structures Prof. Matthew Hertz WTC 207D /
CS 410 Applied Algorithms Applied Algorithms Lecture #1 Introduction, class information, first problems.
COMP171 Data Structures and Algorithm Huamin Qu Lecture 1 (Sept. 1, 2005)
COMP171 Data Structures and Algorithm Qiang Yang Lecture 1 ( Fall 2006)
September 5, Concepts of Programming Languages Hongwei Xi Comp. Sci. Dept. Boston University.
CS 370 Computer Game Design Introduction Ken Forbus Spring 2003
CS 581: Introduction to the Theory of Computation Lecture 1 James Hook Portland State University
July 16, Introduction to CS II Data Structures Hongwei Xi Comp. Sci. Dept. Boston University.
Introduction to Programming Using C++ Dr. Mohamed Khafagy.
1 Learning Statistics Your goals and beliefs about learning statistics are directly related to your grade in STT 215.
January 28, 2014CS410 – Software Engineering Lecture #1: Introduction 1 Welcome to CS 410 – Introduction to Software Engineering Spring 2014 Instructor:
COP4020/CGS5426 Programming languages Syllabus. Instructor Xin Yuan Office: 168 LOV Office hours: T, H 10:00am – 11:30am Class website:
Computer Science 102 Data Structures and Algorithms V Fall 2009 Lecture 1: administrative details Professor: Evan Korth New York University 1.
INE2720 Web Application Software Development General Information.
CS211: Course Overview George Mason University. Today’s topics Go over the syllabus Go over resources – Marmoset – Piazza – Textbook Highlight important.
Computer Network Fundamentals CNT4007C
Welcome to CS 3331, Advanced Object-Oriented Programming Fall 2009 Dept. of Computer Science University of Texas at El Paso.
Welcome to CS 3260 Dennis A. Fairclough. Overview Course Canvas Web Site Course Materials Lab Assignments Homework Grading Exams Withdrawing from Class.
CSE 501N Fall ‘09 00: Introduction 27 August 2009 Nick Leidenfrost.
Lecture 1 Page 1 CS 111 Summer 2015 Introduction CS 111 Operating System Principles.
EECE 310 Software Engineering Lecture 0: Course Orientation.
CSC 212 – Data Structures Prof. Matthew Hertz WTC 207D /
Undergraduate Survey for Math Dialogue March 2010 Transition from High School to University Technology in High School Math Classes Resources for Undergraduates.
Introduction to Data Structures
Computer Science 102 Data Structures and Algorithms CSCI-UA.0102 Fall 2012 Lecture 1: administrative details Professor: Evan Korth New York University.
Advanced Database Course (ESED5204) Eng. Hanan Alyazji University of Palestine Software Engineering Department.
Course Information Sarah Diesburg Operating Systems COP 4610.
+ Introduction to Class IST210 Class Lecture. + Course Objectives Understand the importance of data, databases, and database management Design and implement.
Lecture 1 Page 1 CS 111 Summer 2013 Introduction CS 111 Operating System Principles Peter Reiher.
11/29/2015Elke A. Rundensteiner -- CS5421 Database Management Systems CS Fall 2012 Instructor: Elke Rundensteiner
Intro to CIT 594
CS 345 – Software Engineering Nancy Harris ISAT/CS 217
COP4610/CGS5765 Operating Systems Syllabus. Instructor Xin Yuan Office: 168 LOV Office hours: W M F 9:10am – 10:00am, or by appointments.
1 CS 101 Today’s class will begin about 5 minutes late We will discuss the lab scheduling problems once class starts.
CMSC 2021 CMSC 202 Computer Science II for Majors Spring 2002 Sections Ms. Susan Mitchell.
CS112: Course Overview George Mason University. Today’s topics Go over the syllabus Go over resources – Marmoset – Blackboard – Piazza – Textbook Highlight.
Data Structures and Algorithms in Java AlaaEddin 2012.
COP4020 INTRODUCTION FALL COURSE DESCRIPTION Programming Languages introduces the fundamentals of the design and implementation of programming languages.
1 Welcome Alireza Humber College Lecture 1 Game 540 Alireza
Spring 2008 Mark Fontenot CSE 1341 – Honors Principles of Computer Science I Note Set 1 1.
ECE/CS 352 Digital System Fundamentals1 ECE/CS 352 Digital Systems Fundamentals Spring 2001 Introduction Charles R. Kime.
CS140 – Computer Programming 1 Course Overview First Semester – Fall /1438 – 2016/2017 CS140 - Computer Programming 11.
Computer Network Fundamentals CNT4007C
Computer Engineering Department Islamic University of Gaza
It’s called “wifi”! Source: Somewhere on the Internet!
Course Information Mark Stanovich Principles of Operating Systems
September 27 – Course introductions; Adts; Stacks and Queues
ECE/Comp Sci 352 Digital Systems Fundamentals
EECE 310 Software Engineering
Introduction to CS II Data Structures
Introduction to Programming Using C++
Organization of Programming Languages
Intro to CIT 594
Automata and Formal Languages
Principles of Programming Languages
Principles of Programming Languages
CS 2530 Intermediate Computing Dr. Schafer
Type Systems for Programming Languages
CS Problem Solving and Object Oriented Programming Spring 2019
Presentation transcript:

September 7, Concepts of Programming Languages Hongwei Xi Comp. Sci. Dept. Boston University

September 7, 2004BU CAS CS320 2 Welcome! Concepts of Programming Languages is a course that introduces students to some fundamental concepts in programming language design and implementation The primary goal of the course is to allow students who complete this subject to have – a good feel for the elements of style and aesthetics of programming, and – a strong command of the major techniques for controlling complexity in a large system

September 7, 2004BU CAS CS320 3 Software Crisis Faulty and fragile software becomes more and more common Security breaches happen more and more frequently Maintenance cost skyrockets Programming productivity stagnates

September 7, 2004BU CAS CS320 4 Important Course Information Lecture Times: 9:30-11:00 Classroom: KCB 102 Course Homepage: Instructor: Hongwei Xi / TA: Alexandra Stefan Office Hours: – Instructor: Monday 2-3 and Thursday – TA: TBA Grades Calculation: 40% (homework) + 20% (midterm) + 40% (final) A: 85% or above B: 75% or above C: 65% or above D: 60% or above

September 7, 2004BU CAS CS320 5 Course Overview Building Abstractions with Procedures – This practice is essential to controlling complexity in building large systems Building Abstractions with Data – This practice is essential to handling complex data structures Modularity, Objects and State – Structuring programs according to the (physical) structure of the system being modeled

September 7, 2004BU CAS CS320 6 Course Overview Metalinguistic Abstraction – Techniques for building interpreters Programming with Types – Techniques for implementing a simple type system Computing with Register Machines – Techniques for building compilers

September 7, 2004BU CAS CS320 7 What is this course like? It requires that you do a significant amount of programming – You need to program in functional programming languages Scheme and SML, which may demand a programming style that seem rather unnatural or counterintuitive to you at the very beginning – You are expected to read the documentation and learn some essential debugging skills – You are to be given about 8-10 homework assignments, all of which involve some amount of programming

September 7, 2004BU CAS CS320 8 What is this course like? It proceeds in a fast pace – You are expected to read the text that we may not have time to cover in class – You are expected to try programming examples that we may not have time to explain in class – You may need to take notes on the materials we cover that are not in the textbook, though I will minimize the need for note-taking by providing you with as many notes as possible

September 7, 2004BU CAS CS320 9 What is this course like? You are to have a rapid exposure to many fundamental concepts in programming languages You are expected to gain a great deal more understanding of programming, which can be really helpful for you to pursue other subjects in computer science Above all, I hope that you will find a great deal more fun in programming

September 7, 2004BU CAS CS What is this course not like? This is not a course about your top 10 favorite programming languages – We are interested in fundamental concepts – We are not so concerned with “fads” This is not a compiler course, though it can certainly be of great help for you to take a compiler course later

September 7, 2004BU CAS CS Warnings This is likely a challenging course for you as many new and unfamiliar concepts in programming languages are to be introduced rapidly – You may need to give some time for certain concepts to “sink in” – You may find that some programming assignments are difficult and demanding – Please ask for help if you need it: ask it sooner rather than (too much) later

September 7, 2004BU CAS CS Pleas – I am likely to be a bit overly ambitious, and – I am certain to make (quite a few) mistakes, but – I will do my best to make the course run as smoothly as possible – Please be patient and ask (a lot of) questions!

September 7, 2004BU CAS CS Academic Integrity Strict adherence to the university guidelines – All work you turn in must be solely your own unless specified otherwise – You are allowed to discuss problems with your classmates but you need to write your own code and solutions – Please always remember that every student deserves a chance to achieve a fair grade

September 7, 2004BU CAS CS The End Questions?