(just woofin' at ya)
> fuzzy logic implemented in software.
>
> dcl bucket fuzzy (1); /* valid values are '1'f, '0'f, or '?'f */
>
> There I've done it.
Yee-haw, my eyeballs are a'poppin'!
Now how about some operators for FUZZY? Just for examples, of course.
> SNOBOL deals with string or text processing. It uses lists in
> support of maintaining strings, combining them, deleting from
> them, or inserting into them. LISP is more general purpose.
Thanks, I need to learn what data types LISP supports.
> First off, you need to define which PL/I you have in mind. The
> "old" PL/I used "dope vectors" to do the type of interpretive
> runtime execution you mention. However, that period last
> only a few years. Now that's all resolved at compile time to
> allow faster execution. However, either mode is specifiable.
> If you prefer one to the other, then restrict the specifications
> you use to that choice.
Why should I define which PL/I to use when either mode is specifiable?
> You have this thing about APL operators. I really don't
> understand what objection you can have to writing
> expressions in a specification language as you would in a
> descriptive language. If you want to say "add" instead of "+",
> then go ahead. Select those specifications that support this.
Where'd you get that idea? I'm trying to figure out your specifications
which you're treating as a trade secret.
> Get it through you mind that you have the source, the
> specifications, for every implementation. It's open source.
> You can customize it to suit. Just write the specifications.
That's not what's on the table. I want to see some of your
specifications.
> I'm not trying to restrict you in any manner. In fact I'm
> proposing to the total elimination of all restrictions that
> others might try to impose but that you want to do differently.
Lynn, you can propose traveling to Andromeda too, but I'd like to know
how you think you can get there.
I've been poking at you since Warpstock Chicago because Warpicity and
SL/I seem like good ideas. But that's all they have been and all they
are -- ideas. A hundred years ago some guy who was fiddling around with
electricity said something about 1% inspiration, 99% perspiration. If
he were on this mailing list right now I think he'd like to see some
specs, too.
> If you want to define addition, subtraction, division,
> multiplication, exponentiation on roman numerals, be my
> guest. I'm providing the means for you to do so.
No you haven't. You haven't provided a thing. Where's the syntax for
the specifications?
> If you want a purely fractional real number, you can declare it
> in PL/I today as a fixed point decimal whose width and
> precision are the same, e.g. dcl fanny fixed dec (7,7). If you
> prefer, you can say "dcl fanny fixed bin (7,7)". Try that with
> your Python. You can define it as octal, as hexadecimal, as
> any number base you care to choose.
And what are the operators, Lynn? How do I add two discrete fractions?
Show me how to add fanny1 and fanny2. I want you to show me how to do
this.
Here are my fractions: 1/3 and 2/7. Show me how to add them together
and get, exactly, 10/21. Decimal or binary won't do this.
(Lurkers: This is a real-world problem. I had to resort to discrete
fractions in some of my investment optimization software.)
> Having a numerator over a denominator implies division even
> in a fraction. You could, however, say "dcl fanny fixed dec
> (7,7) init(2/3);" which should give you .6666667.
That's not right, Lynn. It is not the right value. The value is 2/3,
not .6666667. The 2 and the 3 must be stored in separate fields.
> Oddly enough permutation and combination are operators.
> Even in APL. In mathematics. You could define them in the
> initialization of a arithmetic data variable, but not as a data
> type.
The results of the operation are, respectively, permutations and
combinations. Or were you not planning on saving the results of the
operations?
> All of PL/I is a proper subset of PL/E (or SL/I). You add the
> APL operators over and above those already in PL/I. You add
> the list aggregate. You have the assignment statement where
> one and only one "true" result can occur and the assertion
> where zero, one, or more "true" results can occur. The first
> supports both element and non-list aggregate results. The
> second has only list aggregate results.
Now we're getting somewhere. You want to take PL/I, add the APL
operators, and add your unreferenced list aggregate. This seems pretty
darn simple if you ask me.
> I envision a single language, self-defining and self-extensible.
> I envision specifying the language using that language as part
> of its self-defining attribute. I envision a single tool written in
> that language which process the source specifications written
> in the same language. Thus the tool allows you to specify
> changes to the language, changes to the tool, changes to
> anything written in the language.
Good. How about an example? "Hello, World" or somesuch.
> I envision a world in which open source not only dominates
> but effectively eliminates closed or proprietary source.
I envision a world in which I can see the open source specifications of
your vision.
- Peter
=====================================================
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 [ 11 |
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.