Difference between revisions of "Minor-ECMA-problems"

(Precursor)
(Definition: Coupled name)
Line 1: Line 1:
 
==Definition: Coupled name==
 
==Definition: Coupled name==
A feature name can be coupled to the name of an other feature.
 
  
 +
====Motivation====
 +
Therer are several situations in which the ECMA standard uses unfoled forms as a vehicle to describe the semantics in a simple way. When this unfoled forms need names, like in Precursor, inline agents and not isolated features. These names have an influence on the semantics of the system. Two examples are presented:
 +
 +
{|border="0" cellpadding="2" cellspacing="0" align="center"
 +
|-valign="top" -halign="center"
 +
|<code>[eiffel, N]
 +
class
 +
  B
 +
feature
 +
  f
 +
      do
 +
        (agent do g := g + 1; print (g) end).call ([])
 +
      end
 +
  g: INTEGER
 +
end
 +
</code>
 +
|
 +
<code>[eiffel, N]
 +
class
 +
  C
 +
inherit
 +
  B
 +
      rename f as f1, g as g1, select f1, g1 end
 +
  B
 +
      rename f as f2, g as g2 end
 +
end
 +
</code>
 +
 +
|}
 +
 +
 +
A feature name can be coupled to the name of an other feature.
  
 
==New Behaviour of renaming==
 
==New Behaviour of renaming==

Revision as of 07:15, 25 September 2006

Definition: Coupled name

Motivation

Therer are several situations in which the ECMA standard uses unfoled forms as a vehicle to describe the semantics in a simple way. When this unfoled forms need names, like in Precursor, inline agents and not isolated features. These names have an influence on the semantics of the system. Two examples are presented:

class
   B
feature
   f 
      do 
         (agent do g := g + 1; print (g) end).call ([]) 
      end
   g: INTEGER
end
class
   C
inherit
   B
      rename f as f1, g as g1, select f1, g1 end
   B
      rename f as f2, g as g2 end
end


A feature name can be coupled to the name of an other feature.

New Behaviour of renaming

The unfolded form of a renaming is the renaming itself plus the unfolded forms of the renamings of all the coupled names.

Precursor

The current definition of the Precursor semantics in the ECMA standard (8.10.11)