Presentation is loading. Please wait.

Presentation is loading. Please wait.

COMP313A Programming Languages Introduction. More Housekeeping Stuff Reading Material Textbook –Programming Languages: Principles and Practice by Kenneth.

Similar presentations


Presentation on theme: "COMP313A Programming Languages Introduction. More Housekeeping Stuff Reading Material Textbook –Programming Languages: Principles and Practice by Kenneth."— Presentation transcript:

1 COMP313A Programming Languages Introduction

2 More Housekeeping Stuff Reading Material Textbook –Programming Languages: Principles and Practice by Kenneth C. Louden, PWD Publishing Company, 2003 Course Website –Lectures are available on the course website before the lecture –Assignments will be available on the course website –As much as is practical this will be a paper free course Journals e.g. ACM Transactions on Programming Languages and

3 More Housekeeping Stuff Read the Course Outline –www.cs.waikato.ac.nz/Teachingwww.cs.waikato.ac.nz/Teaching –www.cs.waikato.ac.nz/~mjeff/COMP313A Check the Course Web Site regularly Read your email regularly If you send me an email question and don’t want the reply to go to the rest of class state so explicitly.

4 Course Motivation Why are programming languages the way they are? How are particular language features implemented/supported?

5 Course Motivation cont… understand the underlying ideas of the main programming paradigms know more about the huge variety of programming languages that are available nowadays understand how the syntax and semantics of languages can be defined precisely. know how important features are supported in several modern programming languages. have a deeper understanding of the history and rationale behind languages like C++.

6 Lecture Outline Overview and History Syntax and Parsing Data Types Control Structures ??? Functional Languages Issues Logic Programming Object-Oriented Language Issues

7 Programming languages you have used Programming languages you’ve heard of

8 Why Programming languages?

9 What is a programming language? From Louden (page 3) A programming language is a notational system for describing computation in machine-readable and human-readable form.

10 What are programming languages… Computation Anything that a computer can do –i.e. anything that is computable (by a Turing Machine) Most programming languages are Turing Complete. To be useful a programming language must interface to all the hardware devices and software packages that we need to use.

11 What are programming languages… Machine-readable The language must have a fixed syntax so that machine (computer) can read/parse programs. The language must have a fixed semantics so the computer knows what a program means and can execute it.

12 What are programming languages… Human-readable Or preferably, human understandable Much harder for larger programs The main challenge is controlling complexity –main tool abstraction The extent to which a programming language supports/enforces abstraction is an important issue

13 What are programming languages… The human-computer semantic gap Human: Interested in modelling the real world More interested in what computer should do than how Computer: Only data it can manipulate is sequences of zeros and ones. Understands low-level “how” instructions.

14 What are programming languages… High-level languages bridge the human-computer semantic gap by providing a higher level notation that can still be executed by computer

15 Language Implementation Language definition –syntax, semantics Language translation


Download ppt "COMP313A Programming Languages Introduction. More Housekeeping Stuff Reading Material Textbook –Programming Languages: Principles and Practice by Kenneth."

Similar presentations


Ads by Google