Sample
Dorn/java/164
Human rating uses the original dataset scale.
Scores
| Method | Score | Scale | Dataset rank (0–100) |
|---|---|---|---|
| Posnett | 0.296 | 0–1; higher is more readable | 77.4Δ 59.9 |
| Dorn | 0.176 | 0–1; higher is more readable | 13.6Δ 3.9 |
| Mi | 0.765 | 0–1; higher is more readable | 95.0Δ 77.4 |
| LLOC | 13 | Logical lines; fewer is more readable | 50.8Δ 33.3 |
| DeepSeek V4 Pro | 3.33 | 0–20; mean of three runs | 4.6Δ 13.0 |
| GPT-6.1 Sol | 7 | 0–20; mean of three runs | 1.5Δ 16.0 |
| BTTF | 0.549 | 0–1; higher is more readable | 58.8Δ 41.2 |
| Human | 2.75 | 1–5; original rating | 17.5 |
Views
Select the downloaded ZIP or its extracted folder. Files stay in your browser.
Loading feature diagnosis…
Source regions
Feature contributions
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones. | 480.557 | −15.858 |
| Source linesThe number of non-empty source lines. | 30 | +12 |
| Byte entropyHow varied the bytes in the source text are. Repeated bytes give a lower value; a more even mixture gives a higher value. | 3.919 | −5.878 |
Intercept 8.87 + feature contributions = -0.866 (log-odds).
Score = sigmoid(-0.866) = 0.296.
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.199 | −0.99 |
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 0 | −0.804 |
| Identifier layout (horizontal)How rapidly the visual pattern of identifier characters changes from left to right. It measures spatial frequency, not the meaning of the names. | 69 | +0.743 |
| Indentation frequencyHow rapidly indentation changes from line to line. | 1 | −0.703 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 18 | +0.399 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 30 | −0.268 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 29.786 | +0.007 |
Intercept 0.07 + feature contributions = -1.546 (log-odds).
Score = sigmoid(-1.546) = 0.176.
| Score | 0.765 |
|---|
| Score | 13 |
|---|
Run 1
The code is highly unreadable due to multiple factors. Structure is fragmented with broken conditional blocks lacking clear boundaries. Nesting is deep and inconsistent, with if-else chains and unnecessary nested conditions creating confusion. Intent is ambiguous - variables like 'bit' and 'quote' lack context without surrounding code. The code is unnecessarily long with excessive blank lines and scattered indentation that disrupts visual flow. Multiple actions are packed into single lines (like the complex quote-checking condition), violating action granularity. Reading flow is severely disorganized - the snippet starts mid-logic with continue statements and orphaned conditionals, making it impossible to follow the logic path. The mixing of tabs and spaces, inconsistent brace placement, and logical operators without parentheses compound the confusion. Without proper restructuring, consistent formatting, and clearer variable names, this code would be extremely difficult to maintain or debug.
Run 2
This code is extremely difficult to read due to excessive blank lines, inconsistent indentation (excessive and inconsistent tab levels), and fragmented logic. The nested if-else statements with multiple conditions on single lines (e.g., `else if ( c == '\\' )`) hurt clarity. Boolean logic like `if ( c == '"' || c == '\'' && ( i == 0 || chars[ i-1 ] != '\\' ))` blends AND/OR without parentheses, making intent ambiguous. The code lacks context (function signature, variable declarations), and actions are spread across many lines, reducing readability. The reading flow is disorganized, and the excessive whitespace fragments the visual structure. The nesting level is moderate but could be flattened, and the overall structure feels tangled.
Run 3
This code is difficult to read due to deeply nested conditional logic, inconsistent indentation, and unclear intent. The structure is tangled with multiple else-if and nested if blocks, making the flow hard to follow. There are excessive blank lines that disrupt reading flow rather than aid it. The variable names like 'c', 'i', 'chars', and 'bit' are not descriptive, and the purpose of the logic is ambiguous without surrounding context. Multiple actions are compressed into single lines in some places, while other lines contain only a single brace or keyword, creating an inconsistent granularity. The mixed use of single and double quotes in conditions adds confusion. Overall, the code lacks clarity and would benefit from refactoring into smaller, well-named functions with flat logic and consistent formatting.
Run 1
Code Structure: The fragment starts and ends mid-block, obscuring its organization and surrounding control flow. Nesting: Several nested conditionals and indentation levels make the logic difficult to follow. Clarity of intent: Escape handling and quote tracking are recognizable, but using a space as the no-quote sentinel is implicit. The mixed &&/|| condition lacks parentheses around its logical groups, making its asymmetric treatment of quote characters easy to miss. Code length: Individual operations are concise, but excessive blank lines spread out a small amount of logic. Action granularity: Statements generally perform one action per line, which helps readability. Reading flow: continue statements simplify some branches, but inconsistent brace spacing, deep indentation, and incomplete context interrupt natural reading.
Run 2
Code Structure: The conditional branches suggest organized character parsing, but the fragment begins and ends mid-block, obscuring the overall structure. Nesting: Several nested conditionals make execution paths difficult to track. Clarity of intent: Names such as escape and quote convey purpose, but using a space as the no-quote sentinel is implicit, and the mixed &&/|| condition requires careful interpretation. Code length: Individual statements are concise, though excessive blank lines stretch a small amount of logic. Action granularity: Each statement performs one action, which helps readability. Reading flow: Uneven indentation, inconsistent spacing around braces, and incomplete surrounding context interrupt the flow.
Run 3
Code Structure: The fragment suggests character-by-character parsing, but starts and ends mid-block, obscuring its organization. Nesting: Multiple nested conditionals make the control flow difficult to track. Clarity of intent: Names such as escape, quote, and bit_contains_quotes indicate handling of escapes and quoted text, but bit is vague and the mixed &&/|| condition requires careful attention to precedence. Code length: The operations are concise, though excessive blank lines and indentation spread a small amount of logic across many lines. Action granularity: Each assignment and control-flow action occupies its own line, which helps readability. Reading flow: Inconsistent spacing around braces, deep indentation, and incomplete surrounding context interrupt the flow.