# Category:Pascal

**Pascal**

This

**programming language**may be used to instruct a computer to perform a task.

Garbage collected: | No |
---|---|

Parameter passing methods: | By reference, By value |

Type safety: | Safe |

Type strength: | Strong |

Type expression: | Explicit |

Type checking: | Static |

See Also: |

**Pascal** is an imperative computer programming language, developed in 1970 by Niklaus Wirth as a language particularly suitable for structured programming. A derivative known as Object Pascal was designed for object-oriented programming. Pascal can be used very easily in conjunction with fundamental discrete mathematics as sets are built into the language.

There are actually several varieties of Pascal. The most important ones are:

- Standard Pascal (ISO 7185) is the original Pascal standard. However, there are many features missing from that language version, which has led to a wide variety of nonstandard extensions. On the other hand, there are features of Standard Pascal which are seldom implemented by Pascal compilers. A compiler which implements all features of Standard Pascal is GNU Pascal.
- Extended Pascal (ISO 10206) is a later Pascal standard which adds a lot to the original Pascal standard. However, compilers implementing Extended Pascal are even more rare than those implementing Standard Pascal. GNU Pascal implements most of Extended Pascal as well.
- Turbo Pascal was a very successful Pascal implementation for DOS and 16 bit Windows (the latest version was sold under the name "Borland Pascal 7.0") and became the de-facto standard for Pascal on DOS. Even today many Pascal compilers provide compatibility to Turbo Pascal.
- Object Pascal is the Pascal dialect used in Delphi, Borland's successor product to Turbo/Borland Pascal. It extends Pascal with a new object model (in addition to the object model introduced in Turbo Pascal 5.5). This language is also implemented by Free Pascal and Lazarus.
- PascalABC.NET PascalABC.NET is the new generation Pascal programming language that combines simplicity of classic Pascal, a great number of modern extensions and broad capabilities of Microsoft .NET Framework.

## Grammar

The ISO 7185 standard for Pascal uses Extended Backus–Naur Form. Also Van Wijngaarden's grammar can be used to define Pascal's grammar[1].

## See also

## Subcategories

This category has the following 4 subcategories, out of 4 total.

### @

- Pascal examples needing attention (empty)
- Pascal User (138 P)

### P

## Pages in category "Pascal"

The following 200 pages are in this category, out of 688 total.

(previous page) (next page)### A

- A+B
- Abbreviations, easy
- ABC problem
- Abelian sandpile model
- Abstract type
- Abundant odd numbers
- Abundant, deficient and perfect number classifications
- Ackermann function
- Add a variable to a class instance at runtime
- Additive primes
- Address of a variable
- AKS test for primes
- Align columns
- Almost prime
- Amicable pairs
- Anagrams
- Anagrams/Deranged anagrams
- Anaprimes
- Angle difference between two bearings
- Animation
- Anonymous recursion
- Anti-primes
- Append a record to the end of a text file
- Append numbers at same position in strings
- Apply a callback to an array
- Approximate equality
- Arbitrary-precision integers (included)
- Arena storage pool
- Arithmetic evaluation
- Arithmetic numbers
- Arithmetic-geometric mean
- Arithmetic-geometric mean/Calculate Pi
- Arithmetic/Complex
- Arithmetic/Integer
- Array concatenation
- Array length
- Arrays
- Ascending primes
- Assertions
- Attractive numbers
- Averages/Arithmetic mean
- Averages/Mean angle
- Averages/Median
- Averages/Pythagorean means
- Averages/Root mean square
- Averages/Simple moving average

### B

- Babbage problem
- Balanced brackets
- Bell numbers
- Benford's law
- Bernoulli numbers
- Best shuffle
- Binary coded decimal
- Binary digits
- Binary search
- Binary strings
- Bioinformatics/base count
- Bioinformatics/Global alignment
- Bitmap
- Bitmap/Bresenham's line algorithm
- Bitmap/Flood fill
- Bitwise operations
- Blum integer
- Boolean values
- Box the compass
- Boyer-Moore string search
- Brazilian numbers
- Bulls and cows
- Burrows–Wheeler transform
- Bézier curves/Intersections

### C

- Caesar cipher
- Calculating the value of e
- Calkin-Wilf sequence
- Call a foreign-language function
- Call a function
- Call a function in a shared library
- Case-sensitivity of identifiers
- Catalan numbers
- Catalan numbers/Pascal's triangle
- Catamorphism
- Chaocipher
- Chaos game
- Character codes
- Check that file exists
- Chinese remainder theorem
- Chinese zodiac
- Cholesky decomposition
- Chowla numbers
- Circular primes
- Classes
- Closest-pair problem
- Code Golf: Code Golf
- Collections
- Colorful numbers
- Combinations
- Combinations with repetitions
- Comma quibbling
- Command-line arguments
- Comments
- Compare length of two strings
- Compile-time calculation
- Composite numbers k with no single digit factors whose factors are all substrings of k
- Compound data type
- Concurrent computing
- Conditional structures
- Continued fraction
- Convert seconds to compound duration
- Convex hull
- Conway's Game of Life
- Copy a string
- Copy stdin to stdout
- Count how many vowels and consonants occur in a string
- Count in factors
- Count in octal
- Count occurrences of a substring
- Count the coins/0-1
- Cousin primes
- CRC-32
- Create a file
- Create a two-dimensional array at runtime
- Create an HTML table
- Create an object at a given address
- Cross compilation
- CSV data manipulation
- Cuban primes
- Cumulative standard deviation
- Curzon numbers
- Cyclops numbers

### D

- Damm algorithm
- Date format
- Date manipulation
- Day of the week
- De Bruijn sequences
- De Polignac numbers
- Deceptive numbers
- Define a primitive data type
- Delegates
- Delete a file
- Detect division by zero
- Determine if a string has all the same characters
- Determine if a string is numeric
- Determine if two triangles overlap
- Digit fifth powers
- Digital root
- Digital root/Multiplicative digital root
- Dijkstra's algorithm
- Dining philosophers
- Disarium numbers
- Discordian date
- Distance and Bearing
- Distribution of 0 digits in factorial series
- Dot product
- Doubly-linked list/Element definition
- Doubly-linked list/Element insertion
- Doubly-linked list/Traversal
- Dragon curve
- Draw a cuboid
- Draw a sphere
- Dynamic variable names

### E

- Earliest difference between prime gaps
- Elementary cellular automaton/Random number generator
- Emirp primes
- Empty directory
- Empty program
- Empty string
- Enforced immutability
- Entropy
- Enumerations
- Environment variables
- Equilibrium index
- Erdős-Nicolas numbers
- Esthetic numbers
- Ethiopian multiplication
- Euler method
- Euler's sum of powers conjecture
- Evaluate binomial coefficients
- Even or odd
- Evolutionary algorithm
- Exceptions
- Exceptions/Catch an exception thrown in a nested call
- Executable library
- Execute a Markov algorithm
- Execute a system command
- Execute Brain****
- Execute HQ9+
- Exponentiation operator
- Exponentiation with infix operators in (or operating on) the base
- Extensible prime generator
- Extra primes
- Extreme floating point values