Difference between revisions of "New CAT call"

m (Introcution)
m (Introdcution)
Line 1: Line 1:
====Introdcution====
+
====Introduction====
The ECMA standard introduces a new solution to the CAT call problem. Covariant redefinition of a formal argument is only possible to a detatchable type:
+
The ECMA standard introduces a new solution to the CAT call problem. Covariant redefinition of a formal argument is only possible to a detachable type:
  
 
{|border="0" cellpadding="2" cellspacing="0" align="center"
 
{|border="0" cellpadding="2" cellspacing="0" align="center"
Line 28: Line 28:
 
</code>
 
</code>
 
|}
 
|}
 
+
 
This wiki discusses some of concerns related to this solution.
 
This wiki discusses some of concerns related to this solution.

Revision as of 12:26, 27 October 2006

Introduction

The ECMA standard introduces a new solution to the CAT call problem. Covariant redefinition of a formal argument is only possible to a detachable type:

class A
feature
   f (a: ANY) do end
end
class B1
inherit A redefine f end
feature
   f (a: STRING) do end   -- not valid
end
class B2
inherit A redefine f end
feature
   f (a: ?STRING) do end   -- valid
end

This wiki discusses some of concerns related to this solution.