I'm familiar with the spaces and tabs prroblem in Python.iHow is this resolved in Rhombus ?
Hi, @hendrikboom3.
From what I can tell, it seems like tabs vs. spaces aren't parsed ambiguously in shrubbery notation:
Lines and indentation-influencing whitespace are not represented as tokens. Instead, each token conceptually has a line and column derived from its position in the input sequence of characters. The line for an input sequence increments at a linefeed character (code point 0x0A), a two-character sequence of return (code point 0x0C) and linefeed, or a return character that is not followed by a linefeed character. The column of an input sequence for measuring indentation increments once per Unicode grapheme cluster, except that tabs are treated specially. Note that the use of grapheme clusters is a different counting of columns than built into a Racket or Rhombus input port, which counts by Unicode code points. More generally, a column corresponds to a sequence of spaces and tabs, where all non-tab grapheme clusters are treated like a space.
I'm not sure how tabs are treated differently from other grapheme clusters (because I don't really know much about the topic), but hopefully this helps to point in the right direction.