Rexx (Restructured Extended Executor) is designed to be a
scripting language. Its goal is to make scripting as easy, fast,
reliable, and error-free as possible. Many programming languages are
designed for compatibility with older languages, and are written for
specific audiences or platforms.
Labels
.
Search Your Article
Total Pageviews
Monday, February 6, 2017
Rexx - Environment
Try it Option Online
We have set up the Rexx Programming environment on-line, so that you can compile and execute all the available examples on line. It gives you confidence in what you are reading and enables you to verify the programs with different options. Feel free to modify any example and execute it on-line.
Rexx - Installation
The following steps will explain in detail how Rexx can be installed on a Windows system.
Step 1 − Launch the Installer downloaded in the earlier section. After the installer starts, click on the Run button.
Step 1 − Launch the Installer downloaded in the earlier section. After the installer starts, click on the Run button.
Rexx - Installation of Plugin-Ins
In this chapter, we will discuss on how to install plug-ins on popular IDE’s (Integrated Development Environment). Rexx as a programming language is also available in popular IDE’s such as Eclipse. Let’s look at how we can get the required plugin’s in these IDE’s, so that you have more choices in working with Rexx.
Rexx - Basic Syntax
In order to understand the basic syntax of Rexx, let us first look at a simple Hello World program.
Example
/* Main program */ say "Hello World"
Rexx - DataTypes
In any programming language, you need to use various variables to
store various types of information. Variables are nothing but reserved
memory locations to store values. This means that when you create a
variable you reserve some space in the memory to store the value
associated with that variable.
Rexx - Variables
In Rexx, all variables are bound with the ‘=’ statement. Variable
names are sometimes referred to as symbols. They may be composed of
Letters, Digits, and Characters such as ‘. ! ? _’. A variable
name you create must not begin with a digit or a period. A simple
variable name does not include a period. A variable name that includes a
period is called a compound variable and represents an array or table.
Rexx - Operators
An operator is a symbol that tells the compiler to perform specific mathematical or logical manipulations.
Rexx has various types of operators which are also explained in detail as follows −
Rexx has various types of operators which are also explained in detail as follows −
Rexx - Arrays
Arrays in any programming language allow you to group a list of
values of the same type. The use of arrays is that it allows you to
build a list of similar type of values which are sortable, searchable and can be easily manipulated. Rexx also allows one to define arrays. These arrays can be one dimensional or multidimensional.
Rexx - Loops
So far we have seen statements which have been executed one after the
other in a sequential manner. Additionally, statements are provided in
Rexx to alter the flow of control in a program’s logic. They are then
classified into a flow of control statements which we will study in
detail.
Rexx - Decision Making
Decision making structures require that the programmer specify one or more conditions to be evaluated or tested by the program.
The following diagram shows the general form of a typical decision-making structure found in most of the programming languages.
The following diagram shows the general form of a typical decision-making structure found in most of the programming languages.
Rexx - Numbers
Rexx has the following data types when it comes to numbers.
- Integer − A string of numerics that does not contain a
decimal point or exponent identifier. The first character can be a plus
(+) or minus (-) sign. The number that is represented must be between
-2147483648 and 2147483647, inclusive.
Rexx - Strings
Strings in Rexx are denoted by a sequence of characters. The following program is an example of strings −
/* Main program */ a = "This is a string" say aThe output of the above program is as follows −
This is a string
Rexx - Functions
The code in Rexx is normally divided into Functions and Subroutines.
Using functions helps in segregating the code into many more logical
units. Let’s look at these functions in detail.
Rexx - Stacks
The stack is sometimes called the external data queue, but we follow
common usage and refer to it as the stack. It is a block of memory that
is logically external to Rexx. Instructions like push and queue place
data into the stack, and instructions like pull and parse pull extract
data from it.
Rexx - File I/O
Rexx provides a number of methods when working with I/O. Rexx
provides easier classes to provide the following functionalities for
files.
- Reading files
- Writing to files
- Seeing whether a file is a file or directory
Rexx - Functions For Files
In this chapter, we will discuss regarding some of the other functions that are available for files.
S.No. | Functions for Files |
---|---|
1 | Lines
This function returns either the value 1 or the number of lines left
to read in an input stream. The filename is given as the input to the
function. |
Rexx - Subroutines
In any programming language, the entire program is broken into
logical modules. This makes it easier to write code that can be
maintained easily. This is a basic requirement for any programming
language.
In Rexx, modules can be written using Subroutines and functions. Let’s look at the subroutines in detail.
In Rexx, modules can be written using Subroutines and functions. Let’s look at the subroutines in detail.
Rexx - Built-In Functions
Every programming language has some built-in functions that help the
programmer do some routine tasks. Rexx also has a lot of built in
functions.
Let’s look at all of these functions available in Rexx.
Let’s look at all of these functions available in Rexx.
Rexx - System Commands
One of the biggest advantages in Rexx is the ability to create
re-usable scripts. Often in organizations nowadays, having re-usable
scripts is a big value add in saving time to do common repetitive tasks.
For example, technology teams in an IT organization can have the need to have scripts which do common everyday tasks.
For example, technology teams in an IT organization can have the need to have scripts which do common everyday tasks.
Rexx - XML
XML is a portable, open source language that allows programmers to
develop applications that can be read by other applications, regardless
of the operating system and/or developmental language. This is one of
the most common languages used for exchanging data between applications.
Rexx - Regina
Regina is another Rexx interpreter available to compile and run Rexx programs. The official site for Regina is − www.regina-rexx.sourceforge.net/
Rexx - Parsing
One of the most powerful features of Rexx is its ability to parse
text values. You probably will not see this in any other programming
languages.
The general format of the parse statement is as follows −
The general format of the parse statement is as follows −
Rexx - Signals
In Rexx, the signal instruction is used generally for two purposes, which are −
- One is to transfer control to another part of the program. This is normally like the go-to label which is used in other programming languages.
- The other is to go to a specific trap label.
Rexx - Debugging
Debugging is an important feature in any programming language. It
helps the developer to diagnose errors, find the root cause and then
resolve them accordingly. In Rexx, the trace utility is used for
debugging. The trace instruction can be implemented in 2 ways, one is
the batch mode and the other is the interactive mode. Let’s look at how
to implement both options.
Rexx - Error Handling
Rexx has the ability to also work on Error handling as in other programming languages.
The following are some of the various error conditions that are seen in Rexx.
The following are some of the various error conditions that are seen in Rexx.
Rexx - Object Oriented
When you install ooRexx as per the environment chapter, you will also
have the ability to work with classes and objects. Please note that all
of the following code needs to be run in the ooRexx interpreter. The
normal Rexx interpreter will not be able to run this object oriented
code.
Rexx - Portability
Portability is an important aspect in any programming language. As
one knows, Rexx is available in a variety of operating systems such as
Windows and Linux. So it need to be ensured that when one develops a
program on the Windows platform, that it has the necessary precautions
taken if the same programs runs on a Linux platform.
Rexx - Extended Functions
Rexx provides a number of extended functions that gives a wide
variety of functionality, most of them which allow you to interact with
the Operating System. Let’s look at some of them in detail as explained
below.
Rexx - Instructions
Rexx provides a number of instructions that gives a wide variety of
functionality, most of them which allow you to interact with the
Operating System. Let’s look at some of them in detail.
Rexx - Implementations
The Rexx language has a lot of various implementations as we have
already seen in the previous chapters. Each implementation has its own
functionality. Let’s look at the various implementations available for
Rexx.
Rexx - Netrexx
NetRexx is the java implementation of Rexx. In NetRexx, the
implementer is used to convert the Rexx program to a java program which
can then be run on any Java virtual machine.
Rexx - Brexx
BRexx is a lighter weight implementation of Rexx. It still has a lot
of functionality to offer as part of the Rexx implementation.
Rexx - Databases
Rexx has the ability to work with a variety of databases which are listed below.
- HSQLDB
- Oracle
- SQL Server
- MySQL
- MongoDB
Rexx - Handheld & Embedded Programming
Handheld devices have come a long way and Rexx has a lot of ways in
which it can run on these devices. Rexx has support for Pocket PC’s,
Palm devices, PDA’s and other smart phone devices. The advantage of Rexx
to work on these platforms is that Rexx is really a small weight
programming system which just runs in the span of a few kilobytes.
Rexx - Performance
One of the key aspects of any programming language is the performance
of the application. Special practices need to be taken care of to
ensure that the application’s performance is not hampered. Let’s look at
some of the considerations described in steps for better understanding −
Rexx - Best Programming Practices
Every programmer wants their program to be the best when it comes to
quality and efficiency. The following are some of the best programing
practices or hints when writing Rexx programs which can help one achieve
these goals.
An example of the address command is shown below.
An example for the same is shown below.
Hint 1
Use the address command before you issue any command to the operating system or command prompt. This will help you get the address space beforehand in memory and cause your program to run more efficiently.An example of the address command is shown below.
Example
/* Main program */ address system dirThe output of the command is as follows, but it could vary from system to system.
Volume in drive H is Apps Volume Serial Number is 8E66-AC3D Directory of H:\ 06/30/2016 01:28 AM <DIR> Apps 07/05/2016 03:40 AM 463 main.class 07/07/2016 01:30 AM 46 main.nrx 07/07/2016 01:42 AM 38 main.rexx 3 File(s) 547 bytes Dir(s) 313,085,173,760 bytes free
Hint 2
Ensure all commands to the operating system are in upper case and in quotes wherever possible.An example for the same is shown below.
Example
/* Main program */ options arexx_bifs say chdir('\REXXML100') say directory()When we run the above program, we will get the following result.
0 D:\rexxxml100
Hint 3
Avoid creating big comment blocks as shown in the following program.Example
/******/ /* */ /* */ /* */ /******/ /* Main program */ address system dir
Hint 4
Use the Parse statement to assign default values. An example for the same is shown below.Example
parse value 0 1 with a, b
Hint 5
Use the "Left(var1,2)" statement wherever possible instead of the “substr(var1,1,2)" statement.Hint 6
Use the "Right(var1,2)" statement wherever possible instead of the “substr(var1,length(var1),2)" statement.Rexx - Graphical User Interface
In order to use the graphic user interfaces available in Rexx, one needs to use 2 packages, one is called ActiveTcl and the other is the Rexxtk package. Along with these 2 packages, one can design normal forms which can have buttons and other controls on the forms.
Rexx - Reginald
Reginald is another Rexx interpreter which was developed by Jeff
Glantt and has some customizations on how Rexx programs can be run. In
this section, we will see how to get Reginald setup and run a few Rexx
programs in it.
Rexx - Web Programming
Rexx has the facility to work with web servers as well. The most
common being the apache web server. In order to use Rexxw with the
Apache web server, you need to first download the Rexx modules from the
following link − https://sourceforge.net/projects/modrexx/?source=typ_redirect
Once done, make sure to add the mod Rexx modules to the class path.
Once done, make sure to add the mod Rexx modules to the class path.
Rexx - Quick Guide
Rexx (Restructured Extended Executor) is designed to be a
scripting language. Its goal is to make scripting as easy, fast,
reliable, and error-free as possible. Many programming languages are
designed for compatibility with older languages, and are written for
specific audiences or platforms. Rexx ignores extraneous objectives.
Rexx - Useful Resources
The following resources contain additional information on Rexx. Please use them to get more in-depth knowledge on this.
Discuss Rexx
Rexx (Restructured Extended Executor) is designed to be a scripting
language. Its goal is to make scripting as easy, fast, reliable, and
error-free as possible. Many programming languages are designed for
compatibility with older languages, and are written for specific
audiences or platforms. Rexx ignores extraneous objectives.
R - Overview
R is a programming language and software environment for statistical
analysis, graphics representation and reporting. R was created by Ross
Ihaka and Robert Gentleman at the University of Auckland, New Zealand,
and is currently developed by the R Development Core Team.
The core of R is an interpreted computer language which allows branching and looping as well as modular programming using functions. R allows integration with the procedures written in the C, C++, .Net, Python or FORTRAN languages for efficiency.
R is freely available under the GNU General Public License, and pre-compiled binary versions are provided for various operating systems like Linux, Windows and Mac.
R is free software distributed under a GNU-style copy left, and an official part of the GNU project called GNU S.
The core of R is an interpreted computer language which allows branching and looping as well as modular programming using functions. R allows integration with the procedures written in the C, C++, .Net, Python or FORTRAN languages for efficiency.
R is freely available under the GNU General Public License, and pre-compiled binary versions are provided for various operating systems like Linux, Windows and Mac.
R is free software distributed under a GNU-style copy left, and an official part of the GNU project called GNU S.
Evolution of R
R was initially written by Ross Ihaka and Robert Gentleman at the Department of Statistics of the University of Auckland in Auckland, New Zealand. R made its first appearance in 1993.R - Environment Setup
Try it Option Online
You really do not need to set up your own environment to start learning R programming language. Reason is very simple, we already have set up R Programming environment online, so that you can compile and execute all the available examples online at the same time when you are doing your theory work.
R - Basic Syntax
As a convention, we will start learning R programming by writing a
"Hello, World!" program. Depending on the needs, you can program either
at R command prompt or you can use an R script file to write your
program. Let's check both one by one.
R - Data Types
Generally, while doing programming in any programming language, you
need to use various variables to store various information. Variables
are nothing but reserved memory locations to store values. This means
that, when you create a variable you reserve some space in memory.
R - Variables
A variable provides us with named storage that our programs can
manipulate. A variable in R can store an atomic vector, group of atomic
vectors or a combination of many Robjects. A valid variable name
consists of letters, numbers and the dot or underline characters. The
variable name starts with a letter or the dot not followed by a number.
R - Operators
An operator is a symbol that tells the compiler to perform specific
mathematical or logical manipulations. R language is rich in built-in
operators and provides following types of operators.
R - Decision making
Decision making structures require the programmer to specify one or
more conditions to be evaluated or tested by the program, along with a
statement or statements to be executed if the condition is determined to
be true, and optionally, other statements to be executed if the condition is determined to be false.
R - Loops
There may be a situation when you need to execute a block of code
several number of times. In general, statements are executed
sequentially. The first statement in a function is executed first,
followed by the second, and so on.
R - Functions
A function is a set of statements organized together to perform a
specific task. R has a large number of in-built functions and the user
can create their own functions.
R - Strings
Any value written within a pair of single quote or double quotes in R
is treated as a string. Internally R stores every string within double
quotes, even when you create them with single quote.
R - Vectors
Vectors are the most basic R data objects and there are six types of
atomic vectors. They are logical, integer, double, complex, character
and raw.
R - Lists
Lists are the R objects which contain elements of different types
like − numbers, strings, vectors and another list inside it. A list can
also contain a matrix or a function as its elements. List is created
using list() function.
R - Matrices
Matrices are the R objects in which the elements are arranged in a
two-dimensional rectangular layout. They contain elements of the same
atomic types. Though we can create a matrix containing only characters
or only logical values, they are not of much use.
R - Arrays
Arrays are the R data objects which can store data in more than two
dimensions. For example − If we create an array of dimension (2, 3, 4)
then it creates 4 rectangular matrices each with 2 rows and 3 columns.
Arrays can store only data type.
R - Factors
Factors are the data objects which are used to categorize the data
and store it as levels. They can store both strings and integers. They
are useful in the columns which have a limited number of unique values.
Like "Male, "Female" and True, False etc. They are useful in data
analysis for statistical modeling.
R - Data Frames
A data frame is a table or a two-dimensional array-like structure in
which each column contains values of one variable and each row contains
one set of values from each column.
Following are the characteristics of a data frame.
Following are the characteristics of a data frame.
R - Packages
R packages are a collection of R functions, complied code and sample data. They are stored under a directory called "library"
in the R environment. By default, R installs a set of packages during
installation. More packages are added later, when they are needed for
some specific purpose.
R - Data Reshaping
Data Reshaping in R is about changing the way data is organized into
rows and columns. Most of the time data processing in R is done by
taking the input data as a data frame.
R - CSV Files
In R, we can read data from files stored outside the R environment.
We can also write data into files which will be stored and accessed by
the operating system. R can read and write into various file formats
like csv, excel, xml etc.
R - Excel File
Microsoft Excel is the most widely used spreadsheet program which
stores data in the .xls or .xlsx format. R can read directly from these
files using some excel specific packages. Few such packages are -
XLConnect, xlsx, gdata etc. We will be using xlsx package. R can also
write into excel file using this package.
R - Binary Files
A binary file is a file that contains information stored only in form
of bits and bytes.(0’s and 1’s). They are not human readable as the
bytes in it translate to characters and symbols which contain many other
non-printable characters. Attempting to read a binary file using any
text editor will show characters like Ø and ð.
R - XML Files
XML is a file format which shares both the file format and the data
on the World Wide Web, intranets, and elsewhere using standard ASCII
text. It stands for Extensible Markup Language (XML). Similar to HTML it
contains markup tags. But unlike HTML where the markup tag describes
structure of the page, in xml the markup tags describe the meaning of
the data contained into he file.
R - JSON Files
JSON file stores data as text in human-readable format. Json stands
for JavaScript Object Notation. R can read JSON files using the rjson
package.
R - Web Data
Many websites provide data for consumption by its users. For example
the World Health Organization(WHO) provides reports on health and
medical information in the form of CSV, txt and XML files. Using R
programs, we can programmatically extract specific data from such
websites.
R - Databases
The data is Relational database systems are stored in a normalized
format. So, to carry out statistical computing we will need very
advanced and complex Sql queries. But R can connect easily to many
relational databases like MySql, Oracle, Sql server etc. and fetch
records from them as a data frame.
R - Pie Charts
R Programming language has numerous libraries to create charts and
graphs. A pie-chart is a representation of values as slices of a circle
with different colors. The slices are labeled and the numbers
corresponding to each slice is also represented in the chart.
R - Bar Charts
A bar chart represents data in rectangular bars with length of the
bar proportional to the value of the variable. R uses the function barplot()
to create bar charts. R can draw both vertical and horizontal bars in
the bar chart. In bar chart each of the bars can be given different
colors.
R - Boxplots
Boxplots are a measure of how well distributed is the data in a data
set. It divides the data set into three quartiles. This graph represents
the minimum, maximum, median, first quartile and third quartile in the
data set. It is also useful in comparing the distribution of data across
data sets by drawing boxplots for each of them.
R - Histograms
A histogram represents the frequencies of values of a variable
bucketed into ranges. Histogram is similar to bar chat but the
difference is it groups the values into continuous ranges. Each bar in
histogram represents the height of the number of values present in that
range.
R - Line Graphs
A line chart is a graph that connects a series of points by drawing
line segments between them. These points are ordered in one of their
coordinate (usually the x-coordinate) value. Line charts are usually
used in identifying the trends in data.
R - Scatterplots
Scatterplots show many points plotted in the Cartesian plane. Each
point represents the values of two variables. One variable is chosen in
the horizontal axis and another in the vertical axis.
The simple scatterplot is created using the plot() function.
The simple scatterplot is created using the plot() function.
R - Mean, Median & Mode
Statistical analysis in R is performed by using many in-built
functions. Most of these functions are part of the R base package. These
functions take R vector as an input along with the arguments and give
the result.
The functions we are discussing in this chapter are mean, median and mode.
The functions we are discussing in this chapter are mean, median and mode.
R - Linear Regression
Regression analysis is a very widely used statistical tool to
establish a relationship model between two variables. One of these
variable is called predictor variable whose value is gathered through
experiments. The other variable is called response variable whose value
is derived from the predictor variable.
R - Multiple Regression
Multiple regression is an extension of linear regression into
relationship between more than two variables. In simple linear relation
we have one predictor and one response variable, but in multiple
regression we have more than one predictor variable and one response
variable.
R - Logistic Regression
The Logistic Regression is a regression model in which the response
variable (dependent variable) has categorical values such as True/False
or 0/1. It actually measures the probability of a binary response as the
value of response variable based on the mathematical equation relating
it with the predictor variables.
R - Normal Distribution
In a random collection of data from independent sources, it is
generally observed that the distribution of data is normal. Which means,
on plotting a graph with the value of the variable in the horizontal
axis and the count of the values in the vertical axis we get a bell
shape curve.
R - Binomial Distribution
The binomial distribution model deals with finding the probability of
success of an event which has only two possible outcomes in a series of
experiments. For example, tossing of a coin always gives a head or a
tail.
R - Poisson Regression
Poisson Regression involves regression models in which the response
variable is in the form of counts and not fractional numbers. For
example, the count of number of births or number of wins in a football
match series. Also the values of the response variables follow a Poisson
distribution.
R - Analysis of Covariance
We use Regression analysis to create models which describe the effect
of variation in predictor variables on the response variable.
Sometimes, if we have a categorical variable with values like Yes/No or
Male/Female etc. The simple regression analysis gives multiple results
for each value of the categorical variable.
R - Time Series Analysis
Time series is a series of data points in which each data point is
associated with a timestamp. A simple example is the price of a stock in
the stock market at different points of time on a given day. Another
example is the amount of rainfall in a region at different months of the
year.
R - Nonlinear Least Square
When modeling real world data for regression analysis, we observe
that it is rarely the case that the equation of the model is a linear
equation giving a linear graph. Most of the time, the equation of the
model of real world data involves mathematical functions of higher
degree like an exponent of 3 or a sin function.
R - Decision Tree
Decision tree is a graph to represent choices and their results in
form of a tree. The nodes in the graph represent an event or choice and
the edges of the graph represent the decision rules or conditions. It is
mostly used in Machine Learning and Data Mining applications using R.
R - Random Forest
In the random forest approach, a large number of decision trees are
created. Every observation is fed into every decision tree. The most
common outcome for each observation is used as the final output. A new
observation is fed into all the trees and taking a majority vote for
each classification model.
R - Survival Analysis
Survival analysis deals with predicting the time when a specific
event is going to occur. It is also known as failure time analysis or
analysis of time to death. For example predicting the number of days a
person with cancer will survive or predicting the time when a mechanical
system is going to fail.
R - Chi Square Test
Chi-Square test is a statistical method to determine if two
categorical variables have a significant correlation between them. Both
those variables should be from same population and they should be
categorical like − Yes/No, Male/Female, Red/Green etc.
R - Interview Questions
Dear readers, these R Interview Questions have been designed
specially to get you acquainted with the nature of questions you may
encounter during your interview for the subject of R programming. As per
my experience good interviewers hardly plan to ask any particular
question during your interview, normally questions start with some basic
concept of the subject and later they continue based on further
discussion and what you answer −
R - Quick Guide
R - Overview
R is a programming language and software environment for statistical analysis, graphics representation and reporting. R was created by Ross Ihaka and Robert Gentleman at the University of Auckland, New Zealand, and is currently developed by the R Development Core Team.R - Useful Resources
The following resources contain additional information on R
Programming. Please use them to get more in-depth knowledge on this
topic.
Discuss R
R is a programming language and software environment for statistical
analysis, graphics representation and reporting. R was created by Ross
Ihaka and Robert Gentleman at the University of Auckland, New Zealand,
and is currently developed by the R Development Core Team.
Pascal - Overview
Pascal is a general-purpose, high-level language that was originally
developed by Niklaus Wirth in the early 1970s. It was developed for
teaching programming as a systematic discipline and to develop reliable
and efficient programs.
Pascal - Environment Set Up
Try it Option Online
We have set up the Pascal Programming environment online, so that you can compile and execute all the available examples online. It gives you confidence in what you are reading and enables you to verify the programs with different options. Feel free to modify any example and execute it online.
Pascal - Program Structures
Before we study basic building blocks of the Pascal programming
language, let us look a bare minimum Pascal program structure so that we
can take it as a reference in upcoming chapters.
Pascal - Basic Syntax
You have seen a basic structure of pascal program, so it will be easy
to understand other basic building blocks of the pascal programming
language.
Pascal - Data Types
Data types of an entity indicates the meaning, constraints, possible
values, operations, functions and mode of storage associated with it.
Integer, real, Boolean and character types are referred as standard data types. Data types can be categorized as scalar, pointer and structured data types. Examples of scalar data types are integer, real, Boolean, character, subrange and enumerated. Structured data types are made of the scalar types; for example, arrays, records, files and sets. We will discuss the pointer data types later.
Syntax of constant type declaration is follows −
Integer, real, Boolean and character types are referred as standard data types. Data types can be categorized as scalar, pointer and structured data types. Examples of scalar data types are integer, real, Boolean, character, subrange and enumerated. Structured data types are made of the scalar types; for example, arrays, records, files and sets. We will discuss the pointer data types later.
Pascal Data Types
Pascal data types can be summarized as below in the following diagram −Type Declarations
The type declaration is used to declare the data type of an identifier. Syntax of type declaration is −type-identifier-1, type-identfier-2 = type-specifier;For example, the following declaration defines the variables days and age as integer type, yes and true as Boolean type, name and city as string type, fees and expenses as real type.
type days, age = integer; yes, true = boolean; name, city = string; fees, expenses = real;
Integer Types
Following table gives you details about standard integer types with its storage sizes and value ranges used in Object Pascal −Type | Minimum | Maximum | Format |
---|---|---|---|
Integer | -2147483648 | 2147483647 | signed 32-bit |
Cardinal | 0 | 4294967295 | unsigned 32-bit |
Shortint | -128 | 127 | signed 8-bit |
Smallint | -32768 | 32767 | signed 16-bit |
Longint | -2147483648 | 2147483647 | signed 32-bit |
Int64 | -2^63 | 2^63 - 1 | signed 64-bit |
Byte | 0 | 255 | unsigned 8-bit |
Word | 0 | 65535 | unsigned 16-bit |
Longword | 0 | 4294967295 | unsigned 32-bit |
Constants
Use of constants makes a program more readable and helps to keep special quantities at one place in the beginning of the program. Pascal allows numerical, logical, string and character constants. Constants can be declared in the declaration part of the program by specifying the const declaration.Syntax of constant type declaration is follows −
const Identifier = contant_value;Following are some examples of constant declarations −
VELOCITY_LIGHT = 3.0E=10; PIE = 3.141592; NAME = 'Stuart Little'; CHOICE = yes; OPERATOR = '+';All constant declarations must be given before the variable declaration.
Enumerated types
Enumerated data types are user-defined data types. They allow values to be specified in a list. Only assignment operators and relational operators are permitted on enumerated data type. Enumerated data types can be declared as follows −type enum-identifier = (item1, item2, item3, ... )Following are some examples of enumerated type declarations −
type SUMMER = (April, May, June, July, September); COLORS = (Red, Green, Blue, Yellow, Magenta, Cyan, Black, White); TRANSPORT = (Bus, Train, Airplane, Ship);The order in which the items are listed in the domain of an enumerated type defines the order of the items. For example, in the enumerated type SUMMER, April comes before May, May comes before June, and so on. The domain of enumerated type identifiers cannot consist of numeric or character constants.
Pascal - Variable Types
A variable is nothing but a name given to a storage area that our
programs can manipulate. Each variable in Pascal has a specific type,
which determines the size and layout of the variable's memory; the range
of values that can be stored within that memory; and the set of
operations that can be applied to the variable.
Pascal - Constants
A constant is an entity that remains unchanged during program
execution. Pascal allows only constants of the following types to be
declared −
Pascal - Operators
An operator is a symbol that tells the compiler to perform specific
mathematical or logical manipulations. Pascal allows the following types
of operators −
Pascal - Decision Making
Decision making structures require that the programmer specify one or
more conditions to be evaluated or tested by the program, along with a
statement or statements to be executed if the condition is determined to
be true, and optionally, other statements to be executed if the
condition is determined to be false.
Pascal - Loops
There may be a situation, when you need to execute a block of code
several number of times. In general, statements are executed
sequentially: The first statement in a function is executed first,
followed by the second, and so on.
Pascal - Functions
Subprograms
A subprogram is a program unit/module that performs a particular task. These subprograms are combined to form larger programs. This is basically called the 'Modular design.' A subprogram can be invoked by a subprogram/program, which is called the calling program.Pascal - Procedures
Procedures are subprograms that, instead of returning a single value, allow to obtain a group of results.
Defining a Procedure
In Pascal, a procedure is defined using the procedure keyword. The general form of a procedure definition is as follows −procedure name(argument(s): type1, argument(s): type 2, ... ); < local declarations >
Pascal - Variable Scope
A scope in any programming is a region of the program where a defined
variable can have its existence and beyond that variable cannot be
accessed. There are three places, where variables can be declared in
Pascal programming language −
Pascal - Strings
The string in Pascal is actually a sequence of characters with an
optional size specification. The characters could be numeric, letters,
blank, special characters or a combination of all. Extended Pascal
provides numerous types of string objects depending upon the system and
implementation.
Pascal - Booleans
Pascal provides data type Boolean that enables the programmers to
define, store and manipulate logical entities, such as constants,
variables, functions and expressions, etc.
Pascal - Arrays
Pascal programming language provides a data structure called the
array, which can store a fixed-size sequential collection of elements of
the same type. An array is used to store a collection of data, but it
is often more useful to think of an array as a collection of variables
of the same type.
Pascal - Pointers
Pointers in Pascal are easy and fun to learn. Some Pascal programming tasks are performed more easily with pointers, and other tasks, such as dynamic memory allocation, cannot be performed without using pointers. So it becomes necessary to learn pointers to become a perfect Pascal programmer. Let's start learning them in simple and easy steps.
Pascal - Records
Pascal arrays allow you to define type of variables that can hold several data items of the same kind but a record is another user-defined data type available in Pascal which allows you to combine data items of different kinds.
Pascal - Variants
Pascal supports a unique type of storage named variants. You can assign any simple type of values in a variant variable. The type of a value stored in a variant is only determined at runtime. Almost any simple type can be assigned to variants: ordinal types, string types, int64 types.
Pascal - Sets
A set is a collection of elements of same type. Pascal allows
defining the set data type. The elements in a set are called its
members. In mathematics, sets are represented by enclosing the members
within braces{}. However, in Pascal, set elements are enclosed within square brackets [], which are referred as set constructor.
Pascal - File Handling
Pascal treats a file as a sequence of components, which must be of
uniform type. A file's type is determined by the type of the components.
File data type is defined as −
type file-name = file of base-type;
Pascal - Memory Management
This chapter explains dynamic memory management in Pascal. Pascal
programming language provides several functions for memory allocation
and management.
Pascal - Units
A Pascal program can consist of modules called units. A unit might
consist of some code blocks, which in turn are made up of variables and
type declarations, statements, procedures, etc. There are many built-in
units in Pascal and Pascal allows programmers to define and write their
own units to be used later in various programs.
Pascal - Date and Time
Most of the softwares you write need implementing some form of date functions returning current date and time. Dates are so much part of everyday life that it becomes easy to work with them without thinking. P
Pascal - Object Oriented
We can imagine our universe made of different objects like sun,
earth, moon, etc. Similarly, we can imagine our car made of different
objects like wheel, steering, gear, etc. Same way, there are
object-oriented programming concepts, which assume everything as an
object and implement a software using different objects.
Pascal - Classes
You have seen that Pascal Objects exhibit some characteristics of
object-oriented paradigm. They implement encapsulation, data hiding and
inheritance, but they also have limitations. For example, Pascal Objects
do not take part in polymorphism. So classes are widely used to
implement proper object-oriented behavior in a program, especially the
GUI-based software.
Pascal - Quick Guide
Pascal - Overview
Pascal is a general-purpose, high-level language that was originally developed by Niklaus Wirth in the early 1970s. It was developed for teaching programming as a systematic discipline and to develop reliable and efficient programs.Pascal - Useful Resources
The following resources contain additional information on Pascal. Please use them to get more in-depth knowledge on this topic.
Discuss Pascal
Pascal is a procedural programming language, designed in 1968 and
published in 1970 by Niklaus Wirth and named in honour of the French
mathematician and philosopher Blaise Pascal.
Subscribe to:
Posts (Atom)