[Grace-core] Some comments from Tijs on parsing Grace

James Noble kjx at ecs.vuw.ac.nz
Fri Jul 22 14:55:12 PDT 2016


Hi all

Tijs and I talked about Grace earlier today at ECOOP.
Here are the notes I remember...

- Don't aim to do too much in the parser (or grammar)
- e.g. inner code sequence vs code sequence (in the combinator grammar)
      distinguishing trait vs class, handlign otherOPs etc.
- easier to parse and then then have separate checks, which gets you better
      error messages anyway
- parse tree can then be more general, because those distinctions don't really 
     matter semantically, so can abstract them away
- TIjs has a good grammar that defines AST 
so we really should include him & SPOOFAXX people in finalising the canonical AST

- why are boolean operators listed in the spec...
	(and how do they work; i.e how do they distinguish between blocks & booleans.  I said something like: "they see if theere's an ifTrueIfFalse method;
if os they treat tings as booleans, othewise they try to apply() a block and then look for ifTrueIfFalse... "

- method parameters should be mentioned in the spec (as "defs", i.e. unassignable). currently they aren't

- the "grammar is really small" 

-- [[ ]] generics are "syntactic vinegar!!" (and the opposite of Gracefulness)

I think that's the main points - James





More information about the Grace-core mailing list