Sample
Buse/16
Human rating uses the original dataset scale.
Scores
| Method | Score | Scale | Dataset rank (0–100) |
|---|---|---|---|
| Posnett | 0.435 | 0–1; higher is more readable | 61.6Δ 30.3 |
| Scalabrino | 0.549 | 0–1; higher is more readable | 22.7Δ 8.6 |
| Dorn | 0.548 | 0–1; higher is more readable | 39.4Δ 8.1 |
| Mi | 0.635 | 0–1; higher is more readable | 62.6Δ 31.3 |
| LLOC | 4 | Logical lines; fewer is more readable | 59.6Δ 28.3 |
| DeepSeek V4 Pro | 15.67 | 0–20; mean of three runs | 69.7Δ 38.4 |
| GPT-6.1 Sol | 18 | 0–20; mean of three runs | 84.8Δ 53.5 |
| BTTF | 0.565 | 0–1; higher is more readable | 62.6Δ 31.3 |
| Human | 2.9 | 1–5; original rating | 31.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. | 4.693 | −7.04 |
| Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones. | 124 | −4.092 |
| Source linesThe number of non-empty source lines. | 5 | +2 |
Intercept 8.87 + feature contributions = -0.262 (log-odds).
Score = sigmoid(-0.262) = 0.435.
| Score | 0.549 |
|---|
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. | 67 | +0.827 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 6 | +0.824 |
| 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. | 1 | +0.398 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 4.765 | −0.343 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.105 | −0.075 |
Intercept 0.07 + feature contributions = 0.194 (log-odds).
Score = sigmoid(0.194) = 0.548.
| Score | 0.635 |
|---|
| Score | 4 |
|---|
Run 1
The code is concise and clear. It performs a conditional assignment using a guard clause and then two straightforward assignments. Nesting is minimal with a single if-block, and action granularity is one action per line. The intent is evident: propagate a setting from a parent, store source file information, and initialize a class manager. Minor deductions for potential ambiguity regarding 'strictJava' semantics and lack of contextual comments, but overall readability is high.
Run 2
The code is concise and each line performs a clear, single action. It uses a flat structure with minimal nesting, and the intent is straightforward: conditionally propagate a setting, assign a property, and create a class manager. However, the first line uses a single-line if statement without braces, which slightly reduces clarity and can be error-prone in larger codebases. The reading flow is natural and linear, but the lack of surrounding context makes the purpose of `sourceFileInfo` and `BshClassManager` slightly ambiguous. Overall, the code is readable but could be improved with braces and a bit more contextual clarity.
Run 3
The code is fairly readable but has minor inconsistencies. Structure is logical: conditionally inheriting a property, setting a field, and initializing a class manager. Nesting is minimal with only one if statement. Clarity of intent is good—method names and variable names are descriptive. Code length is concise. Action granularity is mostly one action per line, but the if statement with a single-line body could be explicitly braced for clarity and safety. Reading flow is somewhat disrupted by inconsistent formatting: the first if uses spaces around parentheses and a newline before the body, while subsequent statements are separated by blank lines, creating a slightly disjointed feel. The lack of braces around the if body and non-standard spacing reduces readability slightly. Overall, the code is understandable but would benefit from consistent formatting and explicit braces to improve maintainability and reduce ambiguity.
Run 1
Code Structure: logically organized as conditional inheritance of a setting, source metadata assignment, and class manager creation. Nesting: minimal, with only one simple conditional. Clarity of intent: descriptive method and field names make the operations clear, though 'bcm' is abbreviated and the broader initialization context is absent. Code length: concise without unnecessary statements. Action granularity: each statement performs a single action. Reading flow: straightforward top-to-bottom execution, with whitespace separating class manager creation. Omitting braces around the conditional slightly weakens visual clarity and makes future edits less safe.
Run 2
Code Structure: logically groups optional parent-setting inheritance, source information assignment, and class-manager creation. Nesting: nearly flat, with only one simple conditional. Clarity of intent: descriptive method and field names make the operations clear, though the abbreviation 'bcm' and missing surrounding context slightly reduce clarity. Code length: concise, with no unnecessary statements. Action granularity: each line performs a single action. Reading flow: straightforward top-to-bottom execution, with a blank line separating class-manager initialization. Braces around the conditional would make its scope more explicit and safer to modify.
Run 3
Code Structure: Logically organized as conditional inheritance of a setting, source-file initialization, and class-manager creation. Nesting: Very shallow, with only one conditional. Clarity of intent: Method and field names communicate purpose well, though the abbreviation 'bcm' and surrounding context are less clear. Code length: Concise, without unnecessary statements. Action granularity: Each line performs a single action. Reading flow: Natural top-to-bottom flow, with whitespace separating initialization from manager creation. Omitting braces around the conditional slightly reduces readability and makes future edits less robust.