Presentation is loading. Please wait.

Presentation is loading. Please wait.

CMPT 360 Programming Languages (Notations)

Similar presentations


Presentation on theme: "CMPT 360 Programming Languages (Notations)"— Presentation transcript:

1 CMPT 360 Programming Languages (Notations)
R. Sutcliffe NEU A17

2 Programming Notations
(a.k.a. "Languages")

3 The Course

4 Syllabus prerequisites Text: Sebesta Edition 11 Website Homework (mostly text questions) hand in the next Wednesday Labs read carefully for assignment material goals to meet

5 What languages (notations) are
Formal notational systems for expressing problem solving abstractions in human and machine readable form. or Extended algebraic notations.

6 Here is an algorithm for outputting Y spaces:
Machine Assembler High Level Language COUT EQU $FDED; space := " "; F SPACE BEQ DONE WHILE Y > 0 A9 A0 LDA #$A DO 20 ED FD NXSPC JSR COUT WriteChar(space); DEY DEC (Y); D0 FA BNE NXSPC END; DONE RTS

7 NOTES 1. Even when writing assembler, one must know intimate details of the machine's hardware and/or firmware. 2. High level languages, especially if ISO standardized, are machine independent. 3. Machine readability can be precisely defined, whereas human readability is an imprecise idea.

8 Why Study Programming Notations?

9 To better express abstractions of problem solutions

10 To better express abstractions of problem solutions
To be able to pick appropriate tools for a task

11 To better express abstractions of problem solutions
To be able to pick appropriate tools for a task To learn how to learn the use of new tools

12 To better express abstractions of problem solutions
To be able to pick appropriate tools for a task To learn how to learn the use of new tools To understand implementation issues

13 To better express abstractions of problem solutions
To be able to pick appropriate tools for a task To learn how to learn the use of new tools To understand implementation issues To know how and why notations are designed To better use the tools we do understand

14 What are the problem solving domains? and
What are some appropriate notations?

15 Scientific Fortran (Used to be called FORTRAN) APL C++ Julia Algol

16 Business COBOL RPG C++ Delphi Database proprietary languages
Application specific languages (VBA - if we must)

17 Artificial Intelligence
Prolog LISP Scheme

18 Systems C Modula-2 (and their derivatives)

19 Scripting OS Shells awk, tcl/tk AppleScript
ECMAScript (ISO standard name for JavaScript) Perl PHP & MySQL Ruby

20 Commercial Applications (General Purpose)
C, C++, C# Objective C, Swift Java Modula-2

21 Internet (Web) HTML PHP & MySQL Java C# Scripting Languages

22 Embedded Systems (Real Time Applications like robotics)
Modula-2 Ada C++ Speciality Languages

23 Application Specific Languages
VBA DataBase languages (Built in to the DBMS) often based on Pascal, Modula-2, and C Speciality Languages


Download ppt "CMPT 360 Programming Languages (Notations)"

Similar presentations


Ads by Google