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 [ 14 | February | 2005 ]

<< Previous Message << >> Next Message >>


Date: Mon, 14 Feb 2005 10:03:36 PST8
From: "Lynn H. Maxson" <lmaxson@pacbell.net >
Reply-To: scoug-programming@scoug.com
To: < "scoug-programming@scoug.com" > scoug-programming@scoug.com >
Subject: SCOUG-Programming: Open Source Object Rexx

Content Type: text/plain

Peter,

"You gotta be kidding. They teach fractional arithmetic in
junior high. And those kids still do it by hand. And they get
the right answer (if they pass the course)."

Fractional arithmetic that produces a real number? To how
many places? If you come up with a result that is expressed
as a fraction with a numerator and denominator, you don't
have a real number. Period. You can take 2/3 of 6 (4), but
you can't take 2/3 of 7 (4.??????...). You can't do it in
fractional arithmetic except as 14/3. Neither you, a junior high
school student, any computer, or software can under your
terms of infinite precision. You can't do infinity. Maybe you're
not clear on the concept.

"We are talking about data types, something which your
programming language doesn't explore."

A programming language or a specification language doesn't
explore, it represents. If there is something it doesn't
represent, does it have the means of doing so? Is it
extensible? Is it the extension specifiable? If so, then the
language can represent it.

"Your counter-argument is typically "well heck, just put it in
the specifications and then regenerate the compiler". Why
not put it in the compiler, or in an add-on library, to begin
with? Why regenerate the entire compiler to just handle
something like, for example, a fraction? And how are you
going to tell all your open-source cohorts which version
of the compiler to regenerate? Putting the data types into
the compiler solves that problem, too."

Do you read what you write? Do you listen to what you say?
How did it get into a compiler or an add-on library without
being specified? It didn't. It doesn't. It will not. Yesterday.
Today. Forever.

You have this hang up on data types. I checked. PL/I
supports ordinals.

Now the version thing gets interesting. Currently a compiler
has a single version associated with it. A version is a
variation. Why can't it support multiple variations? Ambiguity.
Ambiguity means having more than one result. If you don't
want more than one result (after all you may), then you did
some means of detecting it. Where better than in the
completeness proof, which detects for a given set of
conditions more than one logical path.

Why not tell you it's there? Ask you if you want to select, i.e.
specify, a particular one?

A more interesting form of ambiguity is a contradiction, where
the same set of conditions result in opposite results. Again
the completeness proof comes to bear. Two (or more) paths
from the same prior conditions.

"I accept your challenge. Here's some fractional math:

If X=A/B and Y=C/D
then X*Y = (A*C)/(B*D)"

Wow. Try that on your computer. Pick the programming
language of your choice. X, Y, A, B, C, and D are data types.
A/B and C/D are not. They are expressions involving data
(types) and operators. The same is true for X*Y and
(A*C)/(B*D).

" Is there an open source PL/I spec which we can
build upon?"

There's probably more than one. There is one that IBM
produces called SAA PL/I. Frankly I would just use the
language reference manual that comes with OS/2 PL/I.

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

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
"postmaster@scoug.com".

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


<< Previous Message << >> Next Message >>

Return to [ 14 | February | 2005 ]



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.