TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Francois Thunus
from: Murray Lesser
date: 1999-01-20 18:09:04
subject: Pl/I

Excerpted from a message dated 01-19-99, Francois Thunus to Murray
Lesser:

 ML>   I usually compile a new program for static linking as part of the
 ML> development process, because the run-time error checking seems to
 ML> be more complete and errors have shown up that were hidden in the
 ML> dynamically linked executable. 

FT>any specific reason for that ??

Hi Francois--

    I haven't the slightest idea.  The errors I have picked up this way
have always been in multithreaded programs, and appear to be related to
the way I used to kill off secondary threads.  The runtime error
messages were explicit in the statically linked programs, but sometimes
they didn't appear for the  dynamically linked equivalent.  So I got
into the habit of doing it for all programs.  Compiling for static
linking entails adding only one word ("static") to the first line of the
source code; removing that word will compile the same source code for
dynamic linking (the default).

FT>sure. I also have 2 sets of compiling options, one for 
  >debug and one for production, like everyone does, I imagine.

    Although the version of PL/I I have includes a very complex
source-code debugger and a performance analyzer, I have never bothered
with using either.  I am old fashioned, and debug with "display"
(printf) statements, possibly because I have found too many cases where
the version of the program as compiled and linked for a debugger did not
exhibit problems that appeared only in the final code.  My debugging
process usually works well, because I follow the rules laid down by
Kernighan and Plauger in "Software Tools" about building and testing a
little bit at a time.  Where I differ from them is that I usually don't
waste my time with "top down" testing (or programming).  I tend to start
at the bottom (the hard part of the program), then go to the input and
output, and then fill in what is in between, testing as I go.  Of
course, I program only for my own amazement, these days :-).

    Regards,

        --Murray

___
 * MR/2 2.25 #120 * If it can happen, it will (Murphy)

--- Maximus/2 2.02
* Origin: OS/2 Shareware BBS, telnet://bbs.os2bbs.com (1:109/347)
SEEN-BY: 396/1 632/0 371 633/260 262 267 270 371 635/444 506 728 639/252
SEEN-BY: 670/218
@PATH: 109/347 104 8 13/25 270/101 140/1 396/1 633/260 635/506 728 633/267

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.