Sample
JetBrains/i8
Human rating uses the original dataset scale.
Scores
| Method | Score | Scale | Dataset rank (0–100) |
|---|---|---|---|
| Posnett | 0 | 0–1; higher is more readable | 42.4Δ 14.4 |
| Scalabrino | 0.874 | 0–1; higher is more readable | 87.3Δ 30.5 |
| Dorn | 0.398 | 0–1; higher is more readable | 29.7Δ 27.1 |
| Mi | 0.268 | 0–1; higher is more readable | 20.3Δ 36.4 |
| LLOC | 12 | Logical lines; fewer is more readable | 56.8Δ 0.0 |
| DeepSeek V4 Pro | 11 | 0–20; mean of three runs | 10.2Δ 46.6 |
| GPT-6.1 Sol | 13 | 0–20; mean of three runs | 7.2Δ 49.6 |
| BTTF | 0.554 | 0–1; higher is more readable | 80.5Δ 23.7 |
| Human | 0.76 | 0–1; original rating | 56.8 |
Views
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. | 903.968 | −29.831 |
| Source linesThe number of non-empty source lines. | 32 | +12.8 |
| 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.399 | −5.099 |
Intercept 8.87 + feature contributions = -13.26 (log-odds).
Score = sigmoid(-13.26) = 0.
| Score | 0.874 |
|---|
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 1 | +1.001 |
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 0 | −0.804 |
| Indentation frequencyHow rapidly indentation changes from line to line. | 1 | −0.703 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 31 | −0.291 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.074 | +0.226 |
| 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. | 84.969 | +0.066 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 30.86 | +0.022 |
Intercept 0.07 + feature contributions = -0.412 (log-odds).
Score = sigmoid(-0.412) = 0.398.
| Score | 0.268 |
|---|
| Score | 12 |
|---|
Run 1
The code is a quine, so duplication is expected, but its readability is poor. The structure is fragmented: multiple loops with overlapping ranges (0-3, all, 5+) create confusion about output ordering. Clear intent is not communicated; the magic numbers 4 and 5 require mental tracing of array content. The double block (array declaration and printing loops) is unnecessarily verbose, adding length without clarity. Nesting is shallow, which helps, but action granularity is mixed—some lines handle concatenation and printing, though most are acceptable. Reading flow is disjointed because the output loops are separated and the relationship between the stored code lines and printed lines is obscure. A more readable approach would use a single self-referential string and a placeholder replacement scheme. As written, only someone familiar with quines can quickly parse it; otherwise, it is puzzling.
Run 2
The code is logically organized into a self-replicating structure, but it is difficult to read due to its quine nature. The arrays and loops are flat and avoid deep nesting, which helps readability. However, the magic numbers (4, 5) and the use of character code 34 for quotes obscure intent. Action granularity is mostly one action per line, and the reading flow is linear. The code is concise but inherently complex because it mixes data and logic for self-printing. Overall, it is understandable with effort but not immediately clear.
Run 3
The code is logically organized for a quine, but readability suffers from unclear intent and repetitive printing loops. Nesting is flat, and each line generally performs one action, which helps. However, the purpose of the hard-coded loop boundaries (4, 5) and the string-building on line 4 are not evident without deep quine knowledge. The array structure mixes data and formatting, making the reading flow disjointed. Variable naming is minimal ('q' for quote) and could be more descriptive. The code length is reasonable but lacks comments explaining the quine mechanics. Overall, it is understandable for experienced programmers but not highly readable for general audiences.
Run 1
Code Structure: The string array and three sequential printing loops are logically organized, although embedding source code as data creates duplication. Nesting: Shallow and consistent, with no nested loops or complex branching. Clarity of intent: The class name suggests a quine, but the variable q, numeric character value 34, and hard-coded indices 4 and 5 obscure how reproduction works. Code length: Reasonably concise for its purpose; most length comes from the embedded source representation. Action granularity: Each statement performs one main action, though the concatenated printing expression requires careful parsing. Reading flow: Consistent indentation and sequential loops support readability, but readers must cross-reference array positions to understand the output construction.
Run 2
Code Structure: The source array and three sequential printing loops are logically organized, but their roles are not explained. Nesting: Shallow, with no nested loops or complex branching. Clarity of intent: The Quine class name suggests self-reproduction, but q, numeric boundaries, and lines[4] obscure the mechanics; lines[4] contains a closing delimiter, making its use as a prefix particularly confusing. Code length: Compact for a quine, though embedding source text creates unavoidable repetition. Action granularity: Each executable statement occupies its own line, but the concatenated printing expression combines several formatting operations. Reading flow: Consistent indentation and sequential loops help, while switching between embedded source and executable code requires careful mental tracking.
Run 3
Code Structure: The string array and three sequential loops provide clear organization, though their dependence on specific array positions is brittle. Nesting: Shallow loop nesting keeps control flow easy to follow. Clarity of intent: The class name suggests self-reproduction, but q, the numeric character value 34, and hard-coded indices obscure how it works; lines[4] also appears inconsistent with the intended indentation prefix. Code length: Compact for a quine, with duplicated source text inherent to the technique rather than needless verbosity. Action granularity: Each statement performs one main action, although the concatenated print expression takes extra effort to parse. Reading flow: Consistent indentation and sequential output phases help, but switching between quoted source and executable code, without explanatory comments, interrupts comprehension.