Skip to content

Latest commit

 

History

History
25 lines (18 loc) · 1.36 KB

README.pod

File metadata and controls

25 lines (18 loc) · 1.36 KB
=begin README I'm commenting out not-working-yet tests using the #`(..) style (1) because I can, and (2) because the ` is rarer in Perl 6, therefore faster to search for. In fact, I recently deleted a bunch of tests that were using the #`(..) marker but marked as 'Illegal' because they do illegal things with whitespace, rather than skip past them using '`'. In passing, please note that while it's trivially possible to bum down the tests, doing so makes it harder to insert 'say $p.dump' to view the AST, and 'say $tree.perl' to view the generated Perl 6 structure. As much as I dislike explicitly handling whitespace, here's the rationale: Leading WS, intrabrace WS and trailing WS are all different lengths. This is by design, so that in case I've matched the wrong whitespace section (they all look alike) during testing, the different lengths will break the test. Leading is 5 characters, intra is 3, trailing is 2. It's a happy coincidence that these are the 3rd-5th terms in the Fibonacci sequence. It's not a coincidence, however, that leading, trailing and intrabrace spacing all get tested in the same pass, however. This way if I duplicate a trailing space, it can't be confused with other whitespace because nothing else is 4 spaces (2 + 2) long. Same with the intra of 3, nothing else is 6 spaces long. And duplicating code is the most common failure mode. =end README