In terms of hard limits perhaps 256 characters is a more sensible choice for lines without a join or break character, so that any legacy 8-bit code (popular for old game ROMs, etc.) referenced by other code (i.e. for static analysis or similar) can use byte value references for code column/row position? Source code is just data, size limits are handy rules for avoiding buffer over-runs, use after free bugs, etc. when using external tools for parsing that data but only if the rules are explicit. Better/safer programming languages could have some protections in place to mitigate both unintentional parsing errors and intentional compiler/interpreter exploits?