Re: Definitions of Software and Database

From: Bob Hairgrove <invalid_at_bigfoot.com>
Date: Fri, 03 Feb 2006 23:16:25 +0100
Message-ID: <dlk7u1tu2dmmhhrbk3c7ts4ai7b5g18o89_at_4ax.com>


On 3 Feb 2006 13:56:12 -0800, "dawn" <dawnwolthuis_at_gmail.com> wrote:

>If your data contains variables or if it can only be accessed through
>functions that determine its representation based in its type or other
>information, is it software?

You seem to be trying to make a distinction between "data" and "software". I think this will ultimately lead you astray. Software is always data!

>Must software contain functions? You can
>write classes that have no functions specified overtly, and I would
>call that software, but this software doesn't run outside of some
>external function. Similarly, data is not accessed outside of a
>function, although it can remain in tact on secondary storage devices
>with no functions operating at the time (as can software).
>
>> Some programming languages aren't
>> organized around functions. Assembly, say.
>
>although you could definitely call those instructions. Would a value
>of 5 for the variable myNumber be data? Would a tiny Java class with
>one class variable named myNumber with a value of 5 be software?

"Data" can be anything, even outside of a computer. However, once it is specified to be "information that can be accessed electronically", you are forced to make certain assupmtions about the data:

(1) It occupies an area of storage of non-zero bytes in some form of electronic media (at least WRT computers);

(2) The format in which this data is stored can be "understood" (i.e., read and written) by some program in electronic form which runs under some operating system on at least one kind of hardware and/or networked system;

(3) Programs are also data (always!) because they satisfy (1) and (2) above. The only difference is when this data becomes an executable program -- only because it is meaningful for the operating system on which it is deployed under a certain specific context. If it is not meaningful in the context of an executable program for whatever operating system on which it is deployed, then it is just data in some format which needs yet another program to interpret it.

--
Bob Hairgrove
NoSpamPlease_at_Home.com
Received on Fri Feb 03 2006 - 23:16:25 CET

Original text of this message