Home. 
.

transparent

transparent

transparent

Altova Mailing List Archives


RE: [xml-dev] [OT] Difference between an extensible versus an evolvable information system?

From: "Chris Angus" <chris.angus@----------.--->
To: "'Alessandro Triglia'" <sandro@------.-->,"'Bullard, Claude L \(Len\)'" <len.bullard@----------.--->,"'Roger L. Costello'" <costello@-----.--->,<xml-dev@-----.---.--->
Date: 6/2/2004 3:56:00 PM
Title: Message



I 
think that these definitions work well in terms of an interface.  However, 
if one looks at an implementation X of an interface B, the implementation 
might be said to 'evolve' if it changes without any change to the interface 
B.  Such 'evolution' might be to improve performance in some respect, with 
better algorithms surviving and poorer algorithms being killed 
off.
 
Chris 
Angus

  
  -----Original Message-----
From: Alessandro 
  Triglia [mailto:sandro@m...] 
Sent: 02 June 2004 
  15:45
To: 'Bullard, Claude L (Len)'; 'Roger L. Costello'; 
  xml-dev@l...
Subject: RE: [xml-dev] [OT] Difference between 
  an extensible versus an evolvable information system?


   
  In my opinion, 
  if we refer to interfaces (or languages/syntaxes) rather than, generically, to 
  "information systems", the distinction between evolution and extension becomes 
  clearer and more useful.
   
  My 
  concept of "extensible" interface is that the interface supports certain 
  rigorously-defined extensions to it with the following 
  property:
   
  ------------------
  Given:
   
  - an implementation that exposes the base 
  (non-extended) interface B;
  - an implementation that exposes an extended 
  interface E1;
  
  - an implementation that exposes another 
  extended interface E2,
   
  a 
  program written to use interface B is guaranteed to work (as expected) when 
  using any of these three implementations, "thinking" that it is using an 
  implementation of interface B.
  ------------------
   
  The 
  same concept of extensibility would also apply to 
  languages/syntaxes.
   
  On 
  the other hand, if an interface or a language "evolves", one cannot expect 
  that the condition above is satisfied (although it could 
  be).
   
  In 
  other words, while I expect to be able to use an extended interface as if it 
  were the corresponding base interface, I don't expect to be able to use 
  an evolved interface as if it were the corresponding unevolved 
  interface.  Same thing for a language/syntax.
   
  I 
  think "evolvability" in this context means simply that an interface or a 
  language can be modified easily, inexpensively, and nicely, in order to 
  meet new requirements - without implying that a user can ignore that there has 
  been a modification.
   
  If 
  we refer to a system, I would say that it is possible for a system to 
  *evolve* while some of its interfaces are simply *extended* (while others 
  evolve).
   
  Alessandro Triglia


transparent
Print
Mail
Like It
Disclaimer
.

These Archives are provided for informational purposes only and have been generated directly from the Altova mailing list archive system and are comprised of the lists set forth on www.altova.com/list/index.html. Therefore, Altova does not warrant or guarantee the accuracy, reliability, completeness, usefulness, non-infringement of intellectual property rights, or quality of any content on the Altova Mailing List Archive(s), regardless of who originates that content. You expressly understand and agree that you bear all risks associated with using or relying on that content. Altova will not be liable or responsible in any way for any content posted including, but not limited to, any errors or omissions in content, or for any losses or damage of any kind incurred as a result of the use of or reliance on any content. This disclaimer and limitation on liability is in addition to the disclaimers and limitations contained in the Website Terms of Use and elsewhere on the site.

.
.

transparent

transparent