CHAPTER 2 - Getting started in Pascal


                         YOUR FIRST PASCAL PROGRAM

            Lets  get right into a program that really does  nothing 

        but  is an example of the most trivial Pascal program.  Load 

        Turbo  Pascal,  select TRIVIAL as a Work  file,  and  select 

        Edit. This assumes that you have been successful in learning 

        how to use the TURBO Pascal system.

            You  should  now  have the most trivial  Pascal  program 

        possible  on your display,  and we can take a look  at  each 

        part to define what it does.

            The  first  line  is  required in  the  standard  Pascal 

        definition and is the program name which can be any name you 

        like,  as  long  as it follows the rules for  an  identifier 

        given  in  the  next  paragraph.  It  can  have  no  blanks, 

        otherwise  it would be considered as two words and it  would 

        confuse the compiler. The first word PROGRAM is the first of 

        the reserved words mentioned earlier and it is the indicator 

        to the Pascal compiler that this is the name of the program. 

        Notice that the line ends with a semicolon.  Pascal uses the 

        semicolon  as  the  statement  separator  and  although  all 

        statements do not actually end in a semicolon,  most do, and 

        use of the semicolon will clear up later in your mind. TURBO 

        Pascal does not require the PROGRAM statement, but to remain 

        compatible with standard Pascal,  it will simply ignore  the 

        entire  statement.  I like to include a program name both to 

        keep  me thinking in standard Pascal,  and to add  a  little 

        more indication of the purpose of each program.

                          WHAT IS AN IDENTIFIER?

            All identifiers,  including program name,  procedure and 

        function names,  type definitions, and constant and variable 

        names,  will  start  with an alphabetical character  and  be 

        composed  of  any  combination  of  alphabetic  and  numeric 

        characters  with  no embedded blanks.  Upper or  lower  case 

        alphabetic  characters are not significant and may be  mixed 

        at  will.  (If  you find this definition confusing  at  this 

        point,  don't worry about it,  it will be clear later but it 

        must  be defined early).  The standard definition of  Pascal 

        requires that any implementation (i.e.  any compiler written 

        by  some  company)  must use at least 8  characters  of  the 

        identifier  as  significant  and may  ignore  the  remaining 

        characters  if more are used.  Most implementations use  far 

        more  than 8.  TURBO Pascal uses up to 127 characters in  an 

        identifier  as  being significant.  Since nearly all  Pascal 

        compilers use the underline as an allowable character in  an 

        identifier, it will be freely used throughout this tutorial. 

        The  underline is used in the program name "puppy_dog" which 

        should be on your display at this time.



                                 Page 6









                   CHAPTER 2 - Getting started in Pascal



            Returning  to the example program,  the next line  is  a 

        blank  line which is ignored by all Pascal  compilers.  More 

        will be said about that at the end of this chapter.

                            NOW FOR THE PROGRAM

            The  next two lines comprise the actual Pascal  program, 

        which  in  this  case  does absolutely  nothing.  It  is  an 

        illustration  of the minimum Pascal program.  The two  words 

        BEGIN  and  END  are the next two  reserved  words  we  will 

        consider.  Any  logical  grouping  of  Pascal  code  can  be 

        isolated  by bracketing it with the two reserved words BEGIN 

        and END. You will use this construct repeatedly as you write 

        Pascal code so it is well to learn it thoroughly. Code to be 

        executed by conditional jumps will be bracketed by BEGIN and 

        END, as will code within a loop, and code contained within a 

        subroutine (although they are called PROCEDURES in  Pascal), 

        and  in many other ways.  In the present program,  the BEGIN 

        and  END  are  used to bracket the main  program  and  every 

        Pascal  program will have the main program bracketed by  the 

        BEGIN  and END statement.  Since there is nothing to  do  in 

        this program, there are no statements.

            Finally,  although  it could be very easily  overlooked, 

        there  is one more very important part of the  program,  the 

        period  following  END.  The  period is the  signal  to  the 

        compiler  that  it  has reached the end  of  the  executable 

        statements and is therefore finished compiling. Every Pascal 

        program  will have one,  and only one period in it and  that 

        one period will be at the end of the program. I must qualify 

        that  statement  in  this regard,  a period can be  used  in 

        comments,  and in text to be output.  In fact there are some 

        data  formats that require using a period as part  of  their 

        structure.  The statement is true however that there is only 

        one period in the executable part of a Pascal program. Think 

        of  a Pascal program as one long sentence with one period at 

        the end.

            That should pretty well describe our first program.  Now 

        it is time to compile and run it. To do so you must exit the 

        editor,   using  Ctrl-K-D,  unless  you  modified  the  exit 

        command.  Then compile the program,  and finally run it  and 

        observe the result.

            Since  that  program  didn't do much,  it was  not  very 

        interesting, so let's get one that does something.







                                 Page 7









                   CHAPTER 2 - Getting started in Pascal


                       A PROGRAM THAT DOES SOMETHING

            Load the Pascal program WRITESM and edit it.   The  name 

        is  sort  of  cryptic for "Write Some" and it  will  give  a 

        little   output  to  the  monitor.   The  program  name   is 

        "kitty_cat"  which says nothing about the program itself but 

        is  any identifier we choose to make it.  We still have  the 

        BEGIN  and END to define the main program area  followed  by 

        the period.  However,  now we have two additional statements 

        between the BEGIN and END.  WRITELN is another reserved word 

        and  it is probably not surprising that it means to write  a 

        line of data somewhere. Without a modifier, (to be explained 

        in due time),  it will write to the default device which, in 

        the  case of our IBM compatible,  is the video display.  The 

        data within the parentheses is the data to be output to  the 

        display and although there are many possibilities of display 

        information,  we will restrict ourselves to the simplest for 

        the time being.  Any data between apostrophes will simply be 

        output as text information.

            Notice  the semicolon at the end of each line.  This  is 

        the statement separator referred to earlier and tells Pascal 

        that  this  line is complete as it stands,  nothing more  is 

        coming that could be considered part of this statement. This 

        program will output the two lines of text and stop.  Now  it 

        is time to go try it.  Exit the editor, then compile and run 

        the program.

            You  should  now get the two lines output to  the  video 

        display  every  time  you run it.  When you  grow  bored  of 

        running WRITESM lets go on to another example.

                     ANOTHER PROGRAM WITH MORE OUTPUT

            Load and edit WRITEMR.  This new program has three lines 

        of  output  but the first two are different because  another 

        reserved  word  is introduced to  us,  namely  WRITE.  WRITE 

        causes  the text to be output in exactly the same manner  as 

        WRITELN, but WRITE does not cause a carriage return. WRITELN 

        causes its output to take place then returns the  "carriage" 

        to  the first character of the next line.  The end result is 

        that all three of the lines will be output on the same  line 

        when the program is run. Notice that there is a blank at the 

        end  of  each of the first two lines so that the  formatting 

        will look nice. Exit the editor now and try the new program.

            It is time to confess to a little lie. WRITELN and WRITE 

        are   not  actually  reserved  words,   they  are   actually 

        predefined  functions which we have not discussed  yet.  For 

        the time being,  it is easiest to think of them as  reserved 





                                 Page 8









                   CHAPTER 2 - Getting started in Pascal


        words.  When  we get to the proper point,  we will  redefine 

        them properly.

            Now  might be a good time for you to go back to  editing 

        WRITEMR and add a few more output commands to see if they do 

        what  you think they should do.  When you tire of  that,  we 

        will  go on to the next file and learn about comments within 

        your Pascal program.

                      ADDING COMMENTS IN THE PROGRAM

            The  file named PASCOMS is similar to the others  except 

        that  comments  have  been added to  illustrate  their  use. 

        Pascal  defines  comments as anything between (* and  *)  or 

        anything  between  {  and  }.  Originally  only  the  wiggly 

        brackets  were defined but since many keyboards didn't  have 

        them available, the parenthesis star combination was defined 

        as an extension and is probably universal by now, so you can 

        use either. Most of the comments are self explanatory except 

        for the one within the code. Since comments can go from line 

        to line, the two lines that would print "send money" are not 

        Pascal code but are commented out. Try compiling and running 

        this  program,  then  edit the comments out  so  that  "send 

        money" is printed also.

            When  you have successfully modified and run the program 

        with  comments,  we  will go on to explain  good  formatting 

        practice  and  how  Pascal actually  searches  through  your 

        source file (Pascal program) for its executable statements.

                         GOOD FORMATTING PRACTICE

            Edit  GOODFORM now to see an example of good  formatting 

        style.  It  is important to note that Pascal doesn't give  a 

        hoot  where you put carriage returns or how many blanks  you 

        put  in when a blank is called for as  a  delimiter.  Pascal 

        only  uses  the  combination of reserved words  and  end-of-

        statement  semicolons to determine the logical structure  of 

        the  program.   Since  we  have  really  only  covered   two 

        executable  statements,  I  have used them to build  a  nice 

        looking  program that can be easily understood at a  glance. 

        Compile and run this program to see that it really does what 

        you think it should do. 

                       VERY POOR FORMATTING PRACTICE

            Edit   UGLYFORM  now  to  see  an  example  of  terrible 

        formatting style.  It is not really apparent at a glance but 

        the  program you are looking at is exactly the same  program 

        as the last one. Pascal doesn't care which one you ask it to 

        run because to Pascal,  they are identical.  To you they are 



                                 Page 9









                   CHAPTER 2 - Getting started in Pascal


        considerably different,  and the second one would be a  mess 

        to try to modify or maintain sometime in the future.

            UGLYFORM  should be a good indication to you that Pascal 

        doesn't  care about programming style or form.  Pascal  only 

        cares  about  the structure,  including reserved  words  and 

        delimiters such as blanks and semicolons.  Carriage  returns 

        are  completely  ignored as are extra blanks.  You  can  put 

        extra blanks nearly anywhere except within reserved words or 

        variable  names.  You  should pay attention  to  programming 

        style  but don't get too worried about it yet.  As time goes 

        by you will develop a style of statement indentation, adding 

        blank  lines  for clarity,  and clear commenting  of  Pascal 

        source  code.  Programs  are available to read  your  source 

        code,  and  put  it in a "pretty" format,  but that  is  not 

        important now.

            Not only is the form of the program important, the names 

        used  for variables can be very helpful or hindering  as  we 

        can see in the next chapter. Feel free to move things around 

        and modify the format of any of the programs we have covered 

        so far and when you are ready, we will start on variables in 

        the next chapter.

             Be sure you compile and run UGLYFORM.

                           PROGRAMMING EXERCISES

        1.  Write  a  program that displays your name on  the  video 

            monitor. 

        2.  Modify  your program to display your name and address on 

            one  line,  then  modify it by changing the  WRITE's  to 

            WRITELN's so that the name and address are on  different 

            lines.


















                                 Page 10