Re: Some minor bugs (switch and traceln)

Kevin Reid <[email protected]>
Newsgroups gmane.comp.lang.e.general
Message-ID <[email protected]>
On Feb 16, 2010, at 4:58, Thomas Leonard wrote:

> Ah, it's probably called 'remotes/trunk' (I think it calls it 'git- 
> svn' in my copy because I only cloned one branch). "git branch -a"  
> will list all branches if you still don't see it.

Got it. My error; I forgot about -a and the distinction it made.

> Coming from Java, I was quite surprised that you could implement an
> interface without implementing the methods it defines, though.


The "interface" expression is really a shortcut to a bunch of guard/ 
auditor functionality, none of which actually cares about methods; the  
body containing message declarations is just for documentation purposes.

Or so we've sometimes thought; the future definition of 'interface'  
really is in doubt. In particular, the non-"guards" interface  
declaration has no useful security properties even though it looks  
like it might (due to __conformTo leaking the guard-which-is-the- 
stamp), and it might lose the rubber-stamp functionality altogether,  
especially if my "signature" proposal <http://wiki.erights.org/wiki/Signature 
 > goes into effect.

Remember, E does not have a static type system; for all E knows, the  
contract of the object *is* to throw whenever you call any of its  
methods. And since E objects are opaque, there is no *should-be- 
visible* distinction between "doesn't have this method" and  
"deliberately throws when you call this", other than the  
__getAllegedType.

-- 
Kevin Reid                                  <http://switchb.org/kpreid/>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.