274x Filetype PDF File size 1.47 MB Source: www.csd.uwo.ca
CS342b – winter 2006
PROGRAMMINGLANGUAGES
Lucian Ilie
c
2006by Lucian Ilie
c
CS342b – Programming Languages – winter 2006 –
2006 by Lucian Ilie 2
1 Introduction
- why study (concepts of) programming languages
- classification of languages
- programming domains
- evaluation criteria
- levels of programming languages
- compilation and interpretation
c
CS342b – Programming Languages – winter 2006 –
2006 by Lucian Ilie 3
1.1 General questions
1.1.1 Whyare there so many programming languages?
- evolution – we’ve learned better ways of doing things over time
- socio-economic factors – proprietary interests, commercial advantage
- orientation toward special purposes
- orientation toward special hardware
- diverse ideas about what is pleasant to use
1.1.2 What makes a language successful?
- easy to learn (BASIC, Pascal, LOGO, Scheme)
- easy to express things – easy to use once fluent – ”powerful” (C++, Common
Lisp, APL, Algol-68, Perl)
- easy to implement (BASIC, Forth)
- possible to compile to very good (fast/small) code (Fortran)
- backing of a powerful sponsor (COBOL, PL/1, Ada, Visual Basic)
- wide dissemination at minimal cost (Pascal, Turing, Java)
c
CS342b – Programming Languages – winter 2006 –
2006 by Lucian Ilie 4
1.1.3 Whydowehaveprogramming languages?
– what is a language for?
- way of thinking
– way of expressing algorithms
– from the user’s point of view
- abstraction of virtual machine
– way of specifying what you want the hardware to do without getting down
into the bits
– from the implementor’s point of view
Knuth: “Computer Programming is the art of explaining to another human
being what you want the computer to do.”
no reviews yet
Please Login to review.