Sample
Buse/29
Human rating uses the original dataset scale.
Scores
| Method | Score | Scale | Dataset rank (0–100) |
|---|---|---|---|
| Posnett | 0.973 | 0–1; higher is more readable | 99.0Δ 14.6 |
| Dorn | 0.869 | 0–1; higher is more readable | 97.0Δ 12.6 |
| Mi | 0.672 | 0–1; higher is more readable | 73.7Δ 10.6 |
| LLOC | 3 | Logical lines; fewer is more readable | 88.9Δ 4.5 |
| DeepSeek V4 Pro | 7.67 | 0–20; mean of three runs | 5.1Δ 79.3 |
| GPT-6.1 Sol | 16.67 | 0–20; mean of three runs | 53.5Δ 30.8 |
| BTTF | 0.674 | 0–1; higher is more readable | 87.9Δ 3.5 |
| Human | 3.94 | 1–5; original rating | 84.3 |
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) |
|---|---|---|
| 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.651 | −5.477 |
| Source linesThe number of non-empty source lines. | 4 | +1.6 |
| Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones. | 43.185 | −1.425 |
Intercept 8.87 + feature contributions = 3.568 (log-odds).
Score = sigmoid(3.568) = 0.973.
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| 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. | 35 | +2.183 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 4 | +0.895 |
| 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 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 3.667 | −0.359 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 4 | +0.329 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.068 | +0.279 |
Intercept 0.07 + feature contributions = 1.891 (log-odds).
Score = sigmoid(1.891) = 0.869.
| Score | 0.672 |
|---|
| Score | 3 |
|---|
Run 1
This snippet is too short and lacks context to be meaningfully evaluated. It shows a boolean declaration and two simple assignments, but there is no function signature, surrounding logic, or indication of how these variables relate. Structure is unclear because we cannot see how these lines fit into a larger method. Nesting appears flat, which is positive, but clarity of intent is poor: 'outlen', 'parameters', and 'offset' are unexplained, and 'hasReturnValue' is declared but unused. Code length is concise, but that is only because it is incomplete. Action granularity is acceptable—one assignment per line—but reading flow is disjointed due to the dangling boolean and lack of initialization. Overall, the fragment is not inherently unreadable, but it fails to demonstrate readability because essential context is missing.
Run 2
The code snippet is extremely minimal and lacks context, making a comprehensive readability assessment difficult. It contains two variable declarations and two assignments, each on separate lines, which is good for action granularity. However, there is no surrounding structure, no clear intent, and no logical organization visible. Variables like `outlen`, `offset`, `parameters`, and `hasReturnValue` are not explained, and the odd spacing before `hasReturnValue` is inconsistent. Overall, the snippet is too incomplete to be considered highly readable, though the individual lines are simple and not deeply nested.
Run 3
The code is clear and concise, with one action per line and flat structure. Variable names like `hasReturnValue`, `outlen`, and `offset` are reasonably descriptive. However, the purpose is ambiguous without surrounding context—`outlen` and `parameters` are not explained, and `hasReturnValue` is unused here. The reading flow is natural: declaration, assignment, assignment. Minor issues include misaligned variable declaration (`boolean hasReturnValue`) and no comment explaining why `outlen` equals `parameters.length`. Overall it is readable for a simple assignment block but lacks enough context to fully judge intent.
Run 1
Code Structure: The declaration and assignments are straightforward and logically separated. Nesting: None, making the snippet easy to scan. Clarity of intent: The assignments clearly initialize a length and offset, but the roles of outlen and hasReturnValue lack context, and hasReturnValue is not initialized here. Code length: Concise, with no unnecessary statements. Action granularity: Each line performs one action. Reading flow: Natural and sequential, though inconsistent spacing in the declaration and the disconnected boolean declaration slightly reduce readability.
Run 2
Code Structure: A simple declaration followed by two assignments, with sensible separation. Nesting: Completely flat. Clarity of intent: The assignments are straightforward, but the purpose of hasReturnValue and offset is unclear without context; outlen is slightly abbreviated. Code length: Concise, with no unnecessary statements. Action granularity: Each line performs a single action. Reading flow: Natural and easy to scan, although the excessive spacing in the declaration is distracting.
Run 3
Code Structure: The declaration and assignments are logically grouped, although the surrounding context is absent. Nesting: There is no nesting, so the snippet is easy to scan. Clarity of intent: hasReturnValue and parameters.length are understandable, but outlen and offset lack enough context to establish their roles. Code length: The snippet is concise with no obvious redundancy. Action granularity: Each line performs a single declaration or assignment. Reading flow: The sequence is straightforward, though uneven spacing in the declaration and the blank line slightly weaken visual consistency.