Re: Definitions of Software and Database

From: mAsterdam <mAsterdam_at_vrijdag.org>
Date: Sat, 04 Feb 2006 12:46:31 +0100
Message-ID: <43e49378$0$11072$e4fe514c_at_news.xs4all.nl>


dawn wrote:
> Marshall Spight wrote:
>

>>dawn wrote:
>>
>>>I thought I would start a new thread since the other was quite OT.  x
>>>said there was likely a legal definition of software and I haven't
>>>searched for that yet, but I did find a legal def of database at
>>>http://dataright.haifa.ac.il/db-definition.htm
>>
>>I'm unclear why we'd care what a lawyer thinks a database is.
>>Are we thinking of writing legislation?

>
>
> That ties back to another thread where x gave a definition of software
> that included the abstraction of hardware or some such. I asked how
> one would license such software in an effort to understand this asset.
> He said there was likely a legal def of software, but I have not yet
> found one.
>
>
>>I've always liked "a database is a collection of facts." Short and
>>to the point.

>
>
> I'm OK with that, I think. Accurate data are facts (at least by the
> definition I gave in my most recent blog) and database software must
> work with the logical assumption of the data being accurate.
>
>
>>Let's extend that to "software is a collection of instructions."
>>I would prefer "... a collection of functions" but that's
>>probably too specific.

>
>
> Yes. That is one of the problem points. Is an arbitrary Java class
> "instructions"? Yes in the sense that the "data" can be used as input
> to other software, but not in the sense that it is, on its own, an
> executable instruction.

SO the answer to "are these characters instructions or data?" depends on context - more specifically: it depends on which mechanism we are discussing.

> 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? 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?

Reiterating: Which mechanism are you talking about? Received on Sat Feb 04 2006 - 12:46:31 CET

Original text of this message