SCOUG-SundialSIG Mailing List Archives
Return to [ 19 |
June |
2001 ]
Content Type: text/plain
I would like to keep this project on track regardless of other
SCOUG opportunities. The goal remains to increase the value of
the Sundial products we have purchased and along the way increase
our knowledge in general.
We have various classes of investments from mutual funds, savings
accounts, CDs, commodities, currencies, cash, stocks, and bonds as
well as investment opportunities in 401k's and IRA's. We need to
define the instances (the names) of each in which we have an
interest as well as the attributes (the other data) that we need
for processing.
To that end we need to provide a list of sources, particularly the
online ones where we hope to automate the data capturing. So if
you have one which you use, then submit it as an addition to our
now empty set of sources.
Now understand that you have two types of data, atomic and
derived. By definition atomic is non-derived and forms
collectively the raw material for all derivations. Higher levels
of derived data in turn depends upon other (normally lower level)
derived and atomic data. For those of you familiar with
manufacturing derived data are assemblies and assemblies of
assemblies (other derived data) and raw material (atomic or
elementary) data.
Just as a manufacturing bill-of-material (BOM) represents a
heirachy of assemblies and raw material in a single assembly
(higher level form), so too do similar hierarchies exist in
multiple levels of derived data. We have only two data types,
derived and non-derived (elemental), both of which at any instant
have a value. They differ only in how that value is obtained.
In MESA 2 (or any spreadsheet) a non-empty cell always has a
"value". If its contents are non-derived (elemental), then the
value is identical to the contents. If its contents are derived,
i.e. contain a formula, then its value is not identical but
logically equivalent to its content. This logical equivalence (or
formula), if you use it in your spreadsheet, means you are
programming without condemning you as a programmer.
In programming formulas (or equations) occur on the right-hand
side of an equivalence statement. The left-hand side always
contains the result of evaluating the right. The result is always
stored in a variable, something whose value may change over time.
In programming languages this logical equivalence takes place in
what is called an "assignment statement", with the left-hand and
right-hand sides separated by the "assignment operator". Normally
(and unfortunately) the assignment operator is an "=" (equal)
character. In this, however, I will use a two-byte operator, "<-"
to designate that the process has a "direction", i.e. an order of
evaluation, that proceeds from the right(-hand) to the
left(-hand).
In MESA 2 every cell is a variable, i.e. is capable of having
different values at different times. Every cell has a name
derived from the concatenation of the intersection of the column
name followed by the row name. The unique feature, which
separates the programming language of MESA 2 from others, lies in
the fact that a variable name (the cell location) cannot appear in
the result (left-hand) side of an assigment (formula) statement.
Instead the right-hand (formula) side must be contained within the
variable location.
Thus the early use of the "=" sign to designate the start of a
formula in spreadsheets (1-2-3). The absence of the left-hand
side basically says that both the formula and its evaluation (the
result) are contained within the same cell (variable).
Now using the "<-" operator, saying 'a <- b and b <- c" means that
a is derived from b which in turn is derived from c. In simplest
form we have "a <- b <- c" which is exactly how it is expressed in
APL (one of the earliest, more intelligent developments). This
specifies in a strict right to left manner the order of evaluation
which must occur for a correct result.
This "a <- b <- c" has two assignment operators within it. Thus
it is a multiple assignment statement. This capability exists
only in spreadsheets like MESA 2 (in which it is a necessity to
support hierarchies of formulas) and in APL. The difference is
that you can express this explicitly (and clearly) in APL, while
in MESA 2 it is implicit, requiring the connection to be made by
the reader. Just a little sidebar.
=====================================================
To unsubscribe from this list, send an email message
to "steward@scoug.com". In the body of the message,
put the command "unsubscribe scoug-sundialsig".
For problems, contact the list owner at
"rollin@scoug.com".
=====================================================
Return to [ 19 |
June |
2001 ]
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.
|