[Grace-core] [Minigrace] minor nits - should imports be inherited

Andrew P Black black at cs.pdx.edu
Fri Nov 29 18:58:10 PST 2013


Folks,

About shadowing, the Grace spec currently says (in section 6.0)

	"It is an error to declare a constant or variable that shadows a lexically-enclosing
	constant or variable."

I propose that we remove that sentence.  We could add something about dialects prohibiting shadowing, but it seems more reasonable to have a section in a Dialects Appendix for each dialect that we define, with the restrictions and extensions that it imposes.

Bearing in mind Stefik's recent results, I think that it's also time to change some of our less reasonable choices of name.
We previously agreed that print was a bad name, but never actually implemented an alternative.   Stefik's studies suggested "output".  catch()case()...otherwise() is clearly a bad name for the concept of trying to execute a block, and handling the exceptions that it might raise.   There is no clear winner for this concept in Stefik's studies, but for those familiar with other languages, try()except()... or try()catch()... would make sense.

I'm raising this issue now because it would be good to make these changes before we publish more papers. 

	Andrew


On 29 Nov 2013, at 10:02 , Kim Bruce <kim at cs.pomona.edu> wrote:

> This is probably OK if we commit to building environments that give warnings when there is shadowing (and if we really do make sure the beginning and intermediate dialects forbid it!).
> 
> Kim
> 
> 
> 
> On Nov 29, 2013, at 9:38 AM, Andrew P Black <black at cs.pdx.edu> wrote:
> 
>>> 
>>> 
>>> It might still be worth punting the rule into dialects anyway. We get
>>> the most power by making the very core language as unrestricted as
>>> possible, just like we did with types, and I don't see much downside.
>> 
>> I think that final paragraph is saying the same as the following comment from James:
>> 
>> On 28 Nov 2013, at 21:53 , James Noble <kjx at ecs.vuw.ac.nz> wrote:
>> 
>>> I have a folk memory of us agreeing to move that out of the core &
>>> Into a dialect
>> 
>> I don't have that memory, but did come to the same conclusion myself last night, while I was asleep.
>> The "core language" should allow shadowing.  The beginning and intermediate student dialects can 
>> disallow shadowing by means of a checker.  This gives us the best of both worlds, I think.
>> 
>> 	Andrew
>> 
>> 
>> 
>> _______________________________________________
>> Grace-core mailing list
>> Grace-core at cecs.pdx.edu
>> https://mailhost.cecs.pdx.edu/mailman/listinfo/grace-core




More information about the Grace-core mailing list