Pascal

January 6, 2018 | Author: Anonymous | Category: Social Science, Political Science, Media
Share Embed Donate


Short Description

Download Pascal...

Description

Ryan Piercy

Jon Hooker

 Invented by Nicklaus Wirth  Named After Blaise Pascal  Pascal’s Triangle  Invented a Digital Computer

 Why?  No Structured Languages  Expensive Compilers  Make Programming Accessible

 Popular at Universities  Educational Testing Service  Standard on AP Tests until 1999

 Borland Releases Turbo Pascal  Lightning Fast  Thousands of Lines per Minute

 Object Pascal/Delphi

 Strongly Typed  Strict Compiler  Good for Beginners – Specific Error Messages

 integer  real  char  Boolean

 Subranges/One-Dimensional Arrays  intarray = array[1..10] of integer  Multi-Dimensional Arrays  Declaration:  datatype = array[enum1, enum2, etc.]

 Use:  datatype[1, 2]

 Record  type

InfoType = record Name : string; Age : integer; City, State : String; Zip : integer; end;

 Uses Dot Operator  recordtype.fieldname

 Also Can Access Multiple Fields  with recordtype do  Begin  field := value  field2 := value  End;

 Allocate Memory: New (PointerVariable)  Linked List Using Record/Pointers  type PointerType = ^RecordType; RecordType = record data : integer; next : PointerType; end;

 Pros  Syntactically similar to C and ALGOL, upon which Pascal is based  Data is strongly typed and declared  Good balance of orthogonality (few methods of accomplishing similar tasks)  Recognizable statement structure and keywords (loops, if, while, etc.)  Relatively simple, good for structured learning of other languages

 Cons  Semicolons separate statements instead of

terminating them  Extensive nested procedures are allowed  Identifiers are not case-sensitive:  MyLabel vs. mylabel vs. mYlAbeL

 Pros  Purely procedural, but other derivations are designed

for other paradigms (object-oriented)  Function vs. Procedure: functions return values,

procedures do not  Blocks are denoted using keywords begin and end

 Cons  Semicolon placement can be confusing  Treatment of arrays: array size is part of the type at

declaration, making it impossible to define utility functions/procedures that utilize arrays of any datadependent length, a severe limitation, especially in handling strings

 Pros  Provides run-time type checking, including bounds checking on arrays  Strongly typed variables  Allows pointers, but with limitations (can only reference dynamic variables, must have an associated type, etc.)  Good exception handling

 Cons  None  Used for Education  Needs to be Safe and Reliable

 Pros  Familiar and recognizable C-like syntax  Easy to learn, so training is cheap  Several compilers and interpreters are available to the

public for free  Delphi, Free Pascal, Lazarus, and Turbo Pascal are examples

 Easy to maintain/update due to high readability

and ease of understanding  Cons  Many variations to incorporate different paradigms

(object-oriented)

 Scientific Instrumentation

Companies  Database Administrators  Beginning Programming Courses  Nostalgia Buffs

 Java Job Listings

 Pascal Job Listings



http://www.doc.ic.ac.uk/~nd/surprise_96/journal/vol2/mk8/article2.html#P



http://en.wikipedia.org/wiki/Pascal_(programming_language)



http://en.wikipedia.org/wiki/Comparison_of_Pascal_and_C#Functions.2Fprocedures



http://www.freepascal.org/docs-html/ref/ref.html



http://taoyue.com/tutorials/pascal/history.html



Nance, Douglas W. (1998). Fundamentals of Pascal. Cincinnati: South-Western Ed. Pub.

View more...

Comments

Copyright � 2017 NANOPDF Inc.
SUPPORT NANOPDF