[Grace-core] Lancaster Workshop update #1 - Minor changes

James Noble kjx at ecs.vuw.ac.nz
Sun Jul 31 02:46:39 PDT 2011


> I assume this means just that the class parameters are within scope in method defs

yes, class formal parameters are in scope as if they were local definitions

>> * '''unresolved issue:'''  multiple same-name defs in one object?
> I assume this is the semantics as sequence of method defs (including super versions) rather than allowing multiple explicit defs with same name in an object expression. 

not, it's that issue. the question is how we support the flattening 
explanation for inheritance.  Were we to rename inherited method names,
this problem would go away.  We could either then make the 
appropriate renaming for "super", or just remove super and 
have programmers write the renamed method (a la C++)...

>> '''Rationale:'''
>> In principle, all class declarations and object literals exist before the program starts to run. Non-reflective programs do not create new class declarations or object literals. Even if typing is structural, implementations may compute nominal subtype relations between all classes before the program starts to run.
> 
> It should be ok to have an object literal whose def depends on parameters of a surrounding method, but certainly the shape is known before program runs. 

Duh. Of course. I'll fix the wording.  the things we're calling object, block & string literals (probably
collection/tuple literals too if we have them)  aren't exactly "literal".

hope your trip back is better than your trip from Lancaster to Manchester!

James


More information about the Grace-core mailing list