
One recurring theme in these "State of the Practice" papers was the lack of a fundamental theoretical basis for computing. i.e. there's nothing comparable to the laws of physics in software engineering.
David Gries has written a book called "The Science of Programming" which states a framework for writing mathematicaly correct programs.
Yes, there are many books and papers on programming correctness but few on the nature of information. Specifically I am intereted in any work on layering of information structures. Looking at how information itself is structured and operated upon. This is different to programming which is only one very narrow subset ofg information processing. Alan g.

On Mon, 20 Aug 2001 alan.gauld@bt.com wrote: <...>
Yes, there are many books and papers on programming correctness but few on the nature of information. Specifically I am intereted in any work on layering of information structures. Looking at how information itself is structured and operated upon. This is different to programming which is only one very narrow subset ofg information processing.
I think the Philosophy of Language section in the library would be the place to start. Unless I'm completely misunderstanding you, you are interested in how information becomes data, gets manipulated, then spit out as information again... which seems analagous to what we do everyday when we look at something in the world, extract those features we think are important, then express the result of our machinations in terms that relate them to some other concern. - Bruce

On 20 Aug 01, at 12:24, Bruce Sass wrote:
Yes, there are many books and papers on programming correctness but few on the nature of information.
I think the Philosophy of Language section in the library would be the place to start.
Now thats an interesting idea. Lateral thinking indeed. One previous poster suggester I read Godel, Escher, Bach which is going in the same direction, but doesn't really quite get there either...
Unless I'm completely misunderstanding you, you are interested in how information becomes data, gets manipulated, then spit out as information again...
Maybe. Really I'm just interested in what exactly a theoretical basis for software engineering would look like. The papes I was reading suggested that we may be reaching the point in CS research where we cannot progress further without an underlying theoretical base (like electrical theory underpins electronics which is in turn underpinned by atomic/molecular/ionic theory). But what is that theory? For instance we have Shannons stuff on the information content of bitstreams, WE have Date/Cobbs work on databases, we have Moore and Mealy's work on finite state automota and of course Boole's work on logic and binary arithmetic but there is little of anything unifying these things. Finding the unifying thread that ties together the various strands of CS in the same way electon theory pulls together everything in electronics is the big challenge in advancing CS. Alan G.

On 20 Aug 01, at 12:24, Bruce Sass wrote:
Yes, there are many books and papers on programming correctness but few on the nature of information.
I think the Philosophy of Language section in the library would be the place to start.
Now thats an interesting idea. Lateral thinking indeed. One previous poster suggester I read Godel, Escher, Bach which is going in the same direction, but doesn't really quite get there either...
Unless I'm completely misunderstanding you, you are interested in how information becomes data, gets manipulated, then spit out as information again...
Maybe. Really I'm just interested in what exactly a theoretical basis for software engineering would look like. The papes I was reading suggested that we may be reaching the point in CS research where we cannot progress further without an underlying theoretical base (like electrical theory underpins electronics which is in turn underpinned by atomic/molecular/ionic theory). But what is that theory? For instance we have Shannons stuff on the information content of bitstreams, WE have Date/Cobbs work on databases, we have Moore and Mealy's work on finite state automota and of course Boole's work on logic and binary arithmetic but there is little of anything unifying these things. Finding the unifying thread that ties together the various strands of CS in the same way electon theory pulls together everything in electronics is the big challenge in advancing CS. Alan G.

On Mon, Aug 20, 2001 at 07:58:16PM +0100, alan.gauld@freenet.co.uk wrote:
Really I'm just interested in what exactly a theoretical basis for software engineering would look like.
You might be interested in some of Tony Hoare's recent work on "Unified Theories of Programming". See the links at the bottom of <http://research.microsoft.com/~thoare/>. (For some reason the PDFs reached by those links look really bad in Acrobat Reader on my NT machine.) -- Fred Yankowski fred@OntoSys.com tel: +1.630.879.1312 Principal Consultant www.OntoSys.com fax: +1.630.879.1370 OntoSys, Inc 38W242 Deerpath Rd, Batavia, IL 60510, USA

On Mon, 20 Aug 2001 alan.gauld@freenet.co.uk wrote:
On 20 Aug 01, at 12:24, Bruce Sass wrote:
Yes, there are many books and papers on programming correctness but few on the nature of information.
I think the Philosophy of Language section in the library would be the place to start.
Now thats an interesting idea. Lateral thinking indeed. One previous poster suggester I read Godel, Escher, Bach which is going in the same direction, but doesn't really quite get there either...
Unless I'm completely misunderstanding you, you are interested in how information becomes data, gets manipulated, then spit out as information again...
Maybe. Really I'm just interested in what exactly a theoretical basis for software engineering would look like. The papes I was reading suggested that we may be reaching the point in CS research where we cannot progress further without an underlying theoretical base (like electrical theory underpins electronics which is in turn underpinned by atomic/molecular/ionic theory).
But what is that theory? For instance we have Shannons stuff on the information content of bitstreams, WE have Date/Cobbs work on databases, we have Moore and Mealy's work on finite state automota and of course Boole's work on logic and binary arithmetic but there is little of anything unifying these things.
They are all representations of something in the real world, communicated in a form that best fits a particular forum. I would expect a GUT of Programming to explain how ones takes an arbitrary phenomena and represents it in an arbitrary computing language...
Finding the unifying thread that ties together the various strands of CS in the same way electon theory pulls together everything in electronics is the big challenge in advancing CS.
...the problem is the translation from real to representation, it depends on what aspects of the phenomena are deemed important enough to translate, which depends on the forum the translation is targeted at, and those involve value judgements. The big difference between CS and physics is that with the latter there is always a correct answer (within measurable limits of accuracy and precision), value judgements are never correct except within the confines of a particular belief system. Would a GUToP be like a theory in physics, or more like a philosophical treatise? That is why I would go to the philosophy section, rather than the science section, of the library if I was looking for relevant works. I would further narrow my search down to PoL, because that is the branch of philosophy concerned with the mechanics of representations and communication of ideas -- which is exactly what computing languages are all about. - Bruce
participants (4)
-
alan.gauld@bt.com
-
alan.gauld@freenet.co.uk
-
Bruce Sass
-
fred@ontosys.com