SCOUG Logo


Next Meeting: Sat, TBD
Meeting Directions


Be a Member
Join SCOUG

Navigation:


Help with Searching

20 Most Recent Documents
Search Archives
Index by date, title, author, category.


Features:

Mr. Know-It-All
Ink
Download!










SCOUG:

Home

Email Lists

SIGs (Internet, General Interest, Programming, Network, more..)

Online Chats

Business

Past Presentations

Credits

Submissions

Contact SCOUG

Copyright SCOUG



warp expowest
Pictures from Sept. 1999

The views expressed in articles on this site are those of their authors.

warptech
SCOUG was there!


Copyright 1998-2024, Southern California OS/2 User Group. ALL RIGHTS RESERVED.

SCOUG, Warp Expo West, and Warpfest are trademarks of the Southern California OS/2 User Group. OS/2, Workplace Shell, and IBM are registered trademarks of International Business Machines Corporation. All other trademarks remain the property of their respective owners.

The Southern California OS/2 User Group
USA

SCOUG-Programming Mailing List Archives

Return to [ 05 | August | 2003 ]

>> Next Message >>


Date: Tue, 5 Aug 2003 01:48:33 PDT7
From: "Gregory W. Smith" <gsmith@well.com >
Reply-To: scoug-programming@scoug.com
To: scoug-programming@scoug.com
Subject: SCOUG-Programming: Re: Warpstock 2003 Presentation

Content Type: text/plain

> Lynn H. Maxson wrote:
> > Suppose that you had a variable-length, character variable
> > which not only had an upper limit but whose use dictates a
> > lower one as well. You currently have no means in an HLL
> > to express this rule. Thus you, the programmer, has to
> > enforce the rule (assuming, one, that you know it, and,
> > two, that you remember it wherever) in every instance of
> > its use.
> >
> > You cannot, for example, declare it as part of the data
> > definition, which allows you only to specify an upper
> > limit:
> > dcl jimmy char (17) varying;
> > Now how much of a jump to rocket science is it to be able
> > to change this to
> > dcl jimmy char (5:17) varying;
> > Suppose if it is text, that it contains caps only:
> > dcl jimmy char (5:17) varying range ((A...Z)...);
>
> This is a much better example. I believe that Pascal has the capability
> of defining a variable as a member of a set (for example the only legal
> values are the characters "A, "X" and "Z" or the values (not strings!)
> Dog and Cat) but I've never used that capability of the language so
> can't comment on its robustness.
>
> The ability to define a minimum length is enticing. In PL/I (at least
> in the now-antiquated PL/I Level F compiler) every variable had an
> associated control block which contained the declaration for the
> variable (including the address of the actual data). When you called a
> subroutine the address of the control block rather than the address of
> the data was passed to the subroutine; the subroutine in turn could
> determine what form the data existed in and could act accordingly. You
> could, for example and if the language were extensible, add a BCD value
> to a text string containing Roman numerals. This was typically
> accomplished with a single subroutine containing multiple entry points,
> one entry point for each possible combination of parameter declarations
> plus a general-purpose entry point that would convert the parameters to
> a common declaration.
>
> So it's been done. In assembler. :)))

I will lead off by saying: I don't grok object-oriented programming.
BUT... Isn't the assembler example that Peter pulled out of the guts
of the PL/I compiler really just an example of object-oriented programming?
One that is implemented by the compiler designer behind the scenes?
An "Object" accessed through the control block in assembly?

In spite of Lynn's praises of PL/I, we are now presented with a short
comming of the language. We can only specify an upper limit on the
length of a character variable:
dcl jimmy char (17) varying;
If we want a lower limit as well, THEN JUST CHANGE THE LANGUAGE:
dcl jimmy char (5:17) varying;

I thought the whole point of object-oriented programming was to allow
the programmer to define a class, lets call it CHAR, that would have
the properties of minimum AND maximum length character variables.

But, I am still trying to absorb the Object Oriented aspects of
Python. And it is still a big undigested lump slowly moving down
the snake....

Anyway, take this for what it is worth from someone who does NOT
yet grok this whole Object-Oriented approach.
--
Gregory W. Smith (WD9GAY) gsmith@well.com

=====================================================

To unsubscribe from this list, send an email message
to "steward@scoug.com". In the body of the message,
put the command "unsubscribe scoug-programming".

For problems, contact the list owner at
"rollin@scoug.com".

=====================================================


>> Next Message >>

Return to [ 05 | August | 2003 ]



The Southern California OS/2 User Group
P.O. Box 26904
Santa Ana, CA 92799-6904, USA

Copyright 2001 the Southern California OS/2 User Group. ALL RIGHTS RESERVED.

SCOUG, Warp Expo West, and Warpfest are trademarks of the Southern California OS/2 User Group. OS/2, Workplace Shell, and IBM are registered trademarks of International Business Machines Corporation. All other trademarks remain the property of their respective owners.