Sep 2019
Issue
October 2019 Issue
Collins Software's Newsletter
 
Qualified Values:
Creating a closed world of context around a specific set of information.  The world you create can be as larger as your complete enterprise, or as small as a single bit.

 



Cast Values:
A declaration of information to be placed in context by the compiler. The purpose here is to provide an alternate approach of information handling by having complex structures automatically placed into context. The information is prepared by the compiler to handle any type of action that might be requested.

 

 

 

 

 

 

 

 

 



"Wisdom is intelligence in context." -- Raheel Farooq

"When there is no news, we will give it to you with the same emphasis as if there were." -- David Brinkley

"Leaders set the context and create the conditions in which individuals and organizations thrive." -- Bob Anderson

"Making mental connections is our most crucial learning tool, the essence of human intelligence; to forge links; to go beyond the given; to see patterns, relationships, context" -- Marilyn Ferguson

 

Context: "The Devil you Say"

What do I know about it? In all of the digital information we know absolutely nothing.  A single bit knows nothing about itself other than its state. This is the complete story of computer science. At the hardware level there is no intelligence about the state of a bit or group of bits.  Therefore there is no context that we could apply to any piece of digital information at the hardware level.

The fact is there is no context in digital information  other than an assumed context that we imagine exists. Software is a state of declaring context for the benefit of the human, as an artificial assumption of knowledge. For any piece of information a single group of lines in a single application creates the purpose and its context. The source code of software is not context. We should not assume the intent or the true context, since much of the context this is in the mind of the developer and is never reveled. Even to the developer the complete context is forgotten five minutes after the code is written.

Much of the limitation of context comes from our limited use of computers. We simply need the lights to blink. It is the "low bar syndrome" of computer science that has taken over the technology market place. There is no money in making things better.

What happens if we add context? What happens if we add complete context? What happens if we add context at the hardware level?

These are the questions that "Jane" wishes to answer.  The hard questions that we have turned into a religion of faith that the masses assume exist and believe will be delivered to us by the gods of technology.


Compiler Name Spaces:
The standard scope of common compilers help to define the set of information available, and defines a mixture of contexts that define the programming environment. This is a somewhat an art getting something close to clean context in which to work. 

Hardware Context:
We have no hardware context. All context is assumed to be contained in external locations, some in source code, but mostly in documentation.

So what kind of context would be beneficial at the hardware level? The first most obvious is the context related to numbers:

  • Is this group of bits a number
  • How many bits
  • Is it signed
  • What type of number it it
  • perform operations (add, subtract, multiply, divide, shift, compare, move)

Next is the context related to characters:

  • Is this group of bits a character
  • How many bits
  • What are the characteristics (color, style,...)
  • What language
  • Perform operations (compare, move)

Software Context:
Given a set of facts, what information can be derived. This is the function of software, its context is the information we know about those facts. Most of our software development effort goes into maintaining what I have defined as hardware context, which is the scope of operations that can be applied to any piece of information. By moving 90% of our effort to the hardware level, we can begin to create more complex software context. Which is to maintain a name space which ties every term together and the related set of actions that can be applied to them.

When every term is in context, then every action that can be applied is known. At this point our software effort is complete.  We are done...

Author: Clif Collins

http://CollinsSoftware.com
Houston, Texas
October 1, 2019

email: c1@CollinsSoftware.com