It turns out that defining "split" (as in a \\ b) is complicated if the indent processor generates a SAME token. Other indent processors don't do that; they just provide INDENT and DEDENT.
If we switch to that more traditional approach, and do not have a SAME token, then split turns out to be really *easy* to define, and it works at both the top level and in bodies. I've defined an empty nonterminal "same" in sweet.g, that basically performs the role of cheap documentation that we expect the same indentation at that point. Interestingly, we can now detect "\\" that is after something else and is at the end of the line. Historically, I had proposed that to be a "line continuation", like C. For the moment, I've explicitly documented that this will be an error. But is there value in adding support for this? I may define it as an extension (with a comment noting that!!), so we can see what it looks like, and let's experiment. --- David A. Wheeler ------------------------------------------------------------------------------ Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at: http://p.sf.net/sfu/learnmore_122912 _______________________________________________ Readable-discuss mailing list Readable-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/readable-discuss