I’d like to start a conversation about our expectations on Fluent syntax, in particular in a post-0.7 world.
With the white-space relaxation in 0.7, we moved a whole category of parsing errors into properly parsed Fluent. Ugly, but working.
Looking at the Design Principles document, I wonder if this lends itself to an update to item 3:
3. Tolerance
Be liberal in what you require but conservative in what you do
The syntax should allow good error recovery: an error in one message should not break the whole file. The parser should resume normal parsing as soon as possible and with as few losses as possible.
This only talks about Tolerance in the sense of creating errors, but I think we’ve moved beyond that. I guess it’s an open question how far.