William Coleda <[EMAIL PROTECTED]> wrote:
> But... this isn't actually enforced. You can do:
> 
> .local String foo
> foo = new Blorp
> 
> Basically, anything that isn't one of the basic types is interpreted as "pmc".

I think this is misleading.

> 1) make
> 
> .local String foo
> 
> (and .sym) equivalent to:
> 
> .local pmc foo
> foo = new String

That is how I would expect .local to work.

> 2) make
> 
> .local String foo
> 
> (and .syn) a compile time error: just allow "pmc". [1]

Failing 1), I would support this.

> 3) Allow an initializer as part of the declaration:
> 
> .local string foo = ascii:"foo"
> 
> which would be equivalent to
> 
> .local string foo
> foo = ascii:"foo"

Pretty please?

> 4) Have .sym and .local take on different possible syntaxes.

I'll vote no.

> 5) eliminate one of .sym or .local

Definitely. I think we should drop one (.sym). As Will noted the other
day on IRC, we're only a 0.1 release, so we don't need to worry about
backwards compatibility yet. It's best to get this stuff out while we
still can.

> 6) avoid using ".local" to mean something different based on context (macro 
> or not)

I'm not sure what you mean.

> 7) Add ".lexical".... No firm syntax was discussed for this, but something 
> like:

Sounds good to me.

> 8) add ".global"... Similar to #7.

Same here.

-- 
matt diephouse
http://matt.diephouse.com

Reply via email to