Documente Academic
Documente Profesional
Documente Cultură
version
. doc
doc le
Document le should include problem description, main results and
discussion, relevant gures and tables, and m-les for each problem.
E-mail your report le immediately to teaching assistant (Ciou Y.J.
d93524013@ntu.edu.tw) BEFORE you leave computer room
You can modify your report and e-mail it again to teaching assistant after
the class. However, you have to use another le name:
D93524013 2007 03 14 2.doc
Two examinations: mid-term and nal (25% + 25%)
Chen CL 15
Some High-level Programming Languages
Language Key Data Application Area Origin of Names
FORTRAN IBM (1957) Scientic programming FORmula TRANslation language
LISP MIT (1958) Symbolic computation (AI) LISp Processing Common Lisp Object System
COBOL USA (1959) Business data processing COmmon Business-Oriented Language
BASIC (1965) Simple on PC Beginners All Purpose Symbolic Instruction Code
C Bell (1972) Systems programming Predecessor language was named B
PROLOG (1972) Symbolic computation (AI) PROgramming LOGic (Frence)
Ada USA (1980) Real-time distributed systems Ada Augusta Byron collaborated with nineteenth-
century computer pioneer Charles Babbage
Smalltalk (1980) Graphical user interfaces; Object-
oriented programming
Objects talk to one another via messages
C++ Supports objects and objected-
oriented programming
Incremental modication of C (++ is the C
increment operator)
JAVA SUN (1995) Supports Web programming Originally named Oak
Chen CL 16
Progress of Programming Languages
1955
1960
1965
1970
1975
1980
1985
1990
1995
2000
Y
e
a
r
Progress of Programming Languages
(Machine Language) (Assembly Language)
01011010 ADD
Chen CL 17
Progress of Programming Languages
1955
1960
1965
1970
1975
1980
1985
1990
1995
2000
Y
e
a
r
Progress of Programming Languages
(Machine Language) (Assembly Language)
FORTRAN
DO 7, LOOP = 1,5
READ *, X, Y
AVE=(X+Y)/2.0
PRINT *, X,Y,AVE
7 CONTINUE
END
Chen CL 18
Progress of Programming Languages
1955
1960
1965
1970
1975
1980
1985
1990
1995
2000
Y
e
a
r
Progress of Programming Languages
(Machine Language) (Assembly Language)
FORTRAN
COBOL
01 EMPLOYEERECORD
05 EMPLOYEENUMBER PIC 9(5)
05 EMPLOYEENAME PIC X(30)
05 BIRTHDATE
10 BIRTHMONTH PIC 99
10 FILLER PIC X
10 BIRTHDAY PIC 99
05 DATEHIRED
10 MONTHHIRED PIC 99
10 FILLER PIC X
10 DAYHIRED PIC 99
Chen CL 19
Progress of Programming Languages
1955
1960
1965
1970
1975
1980
1985
1990
1995
2000
Y
e
a
r
Progress of Programming Languages
(Machine Language) (Assembly Language)
FORTRAN
COBOL
LISP
SCHEME
COMMON
LISP
CLOS
PROLOG
(defun length (x)
(cond ((null x) 0)
(t(+1 (length (cdr x))))))
(length (I Love Computers))
3
Chen CL 20
Progress of Programming Languages
1955
1960
1965
1970
1975
1980
1985
1990
1995
2000
Y
e
a
r
Progress of Programming Languages
(Machine Language) (Assembly Language)
FORTRAN
COBOL
LISP
SCHEME
COMMON
LISP
CLOS
PROLOG
BASIC
VISUAL
BASIC
Dim i, sum
sum = 0
For i = 1 to 10
sum = sum + 1
Next i
Chen CL 21
Progress of Programming Languages
1955
1960
1965
1970
1975
1980
1985
1990
1995
2000
Y
e
a
r
Progress of Programming Languages
(Machine Language) (Assembly Language)
FORTRAN
COBOL
LISP
SCHEME
COMMON
LISP
CLOS
PROLOG
BASIC
VISUAL
BASIC
ALGOL60
PASCAL
MODULA2
MODULA3
if (i > 0) then
x := 10
else
y := 5
Chen CL 22
Progress of Programming Languages
1955
1960
1965
1970
1975
1980
1985
1990
1995
2000
Y
e
a
r
Progress of Programming Languages
(Machine Language) (Assembly Language)
FORTRAN
COBOL
LISP
SCHEME
COMMON
LISP
CLOS
PROLOG
BASIC
VISUAL
BASIC
ALGOL60
PASCAL
MODULA2
MODULA3
CPL
C
if (i > 0)
x = 10;
else
y = 5;
Chen CL 23
Progress of Programming Languages
1955
1960
1965
1970
1975
1980
1985
1990
1995
2000
Y
e
a
r
Progress of Programming Languages
(Machine Language) (Assembly Language)
FORTRAN
COBOL
LISP
SCHEME
COMMON
LISP
CLOS
PROLOG
BASIC
VISUAL
BASIC
ALGOL60
PASCAL
MODULA2
MODULA3
CPL
C
SIMULA
SMALLTALK
C++
C++
Standard
Chen CL 24
Progress of Programming Languages
1955
1960
1965
1970
1975
1980
1985
1990
1995
2000
Y
e
a
r
Progress of Programming Languages
(Machine Language) (Assembly Language)
FORTRAN
COBOL
LISP
SCHEME
COMMON
LISP
CLOS
PROLOG
BASIC
VISUAL
BASIC
ALGOL60
PASCAL
MODULA2
MODULA3
CPL
C
SIMULA
SMALLTALK
C++
C++
Standard
ADA
JAVA
Chen CL 25
Progress of Programming Languages
1955
1960
1965
1970
1975
1980
1985
1990
1995
2000
Y
e
a
r
Progress of Programming Languages
(Machine Language) (Assembly Language)
FORTRAN
COBOL
LISP
SCHEME
COMMON
LISP
CLOS
PROLOG
BASIC
VISUAL
BASIC
ALGOL60
PASCAL
MODULA2
MODULA3
CPL
C
SIMULA
SMALLTALK
C++
C++
Standard
ADA
JAVA
MATLAB
Chen CL 26
MATLAB ?
MATrixLABoratory
In 1978, Professor Cleve Moler (New Mexico University, USA)
used FORTRAN to write the MATLAB for applications involving
matrices, linear algebra, and numerical analysis
In 1984, Jack Little (Stanford University) used C to rewrite and
to commercialize the MATLAB software (MathWorks Company)
MATLAB is both a computer programming language and
an interactive software environment for using that language
eectively
Chen CL 27
Why MATLAB ?
Outstanding Features
Signicantly simpler programming
Continuity (no distinction) among integer, real, and complex values
(any variable can take any type of number without special declaration)
Extended range of numbers and their accuracy
(all in double precision)
Extensive graphic tools including graphic user interface functions
A comprehensive mathematical library
Capability of linking with traditional programming languages
Transportability of MATLAB programs
MATLAB has a number of add-on software modules, called
toolboxes, that perform more specialized computations.
All toolboxes run under the core MATLAB program
Chen CL 28
Simulink
Graphical Dynamic Simulation
built on top of
MATrixLABoratory
Chen CL 29
Thank You for Your Attention
Questions Are Welcome