Sample
int-219cd4244fbd-I10
Remove about 40% of line-break groups while retaining structure
Scores
| Method | Score | Scale |
|---|---|---|
| Posnett | 0 | 0–1; higher is more readable |
| Scalabrino | 0.533 | 0–1; higher is more readable |
| Dorn | 0.05 | 0–1; higher is more readable |
| Mi | 0.051 | 0–1; higher is more readable |
| LLOC | 22 | Logical lines; fewer is more readable |
| DeepSeek V4 Pro | 6.33 | 0–20; mean of three runs |
| GPT-6.1 Sol | 11.67 | 0–20; mean of three runs |
| BTTF | 0.432 | 0–1; higher is more readable |
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. | 1553.409 | −51.263 |
| Source linesThe number of non-empty source lines. | 29 | +11.6 |
| 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.518 | −6.777 |
Intercept 8.87 + feature contributions = -37.569 (log-odds).
Score = sigmoid(-37.569) = 0.
| Score | 0.533 |
|---|
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. | 135.967 | −2.094 |
| 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. | 29 | +0.266 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 28 | −0.222 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.113 | −0.154 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 29 | +0.01 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 28.803 | −0.007 |
Intercept 0.07 + feature contributions = -2.935 (log-odds).
Score = sigmoid(-2.935) = 0.05.
| Score | 0.051 |
|---|
| Score | 22 |
|---|
Run 1
The class has a clear purpose but suffers from poor formatting and organization. The opening line mixes package/imports with the class declaration, and method signatures are cramped with `@Override` and modifiers on the same line. The `setTarget` method manually manages a backwards chain loop, which is harder to follow than a simple ordered iteration. The `toString` method repeats the chained-loop pattern with inline conditional logic, making it unnecessarily verbose. Nesting is shallow, which is good, but action granularity is inconsistent—some lines contain multiple statements. Overall, the code is functionally correct but visually noisy and harder to scan than necessary.
Run 2
The code suffers from poor formatting and readability. Imports and class declarations are compressed onto single lines, and method signatures mix with logic due to inconsistent line breaks. The setTarget method has confusing action granularity: variable declarations, loop control, and assignments occur on one line, reducing clarity. The loop logic is not immediately apparent due to tight packing and lack of blank lines. While the overall structure is logical (a chain of transformers), the intent is obscured by formatting. Nesting is shallow, which is a positive, but reading flow is disorganized because of uneven whitespace and abrupt line breaks. Code length is reasonable for the task, but the lack of separation between actions makes it feel longer and harder to parse. visitMethod simply delegates, but its parameter alignment is mixed. toString has clearer structure but still suffers from cramped line breaks and missing spaces around braces. Overall, the code is functional but uninviting and difficult to scan quickly.
Run 3
The code has several readability problems. Formatting is inconsistent and compressed, with multiple statements on single lines (e.g., the constructor, package declaration with import). The setTarget method contains non-obvious reversed iteration logic for building a transformer chain, making intent unclear. Naming is somewhat ambiguous (e.g., 'next', 'cv'). The toString method's loop is unnecessarily verbose and could use a join or stream. While the class is short and flat, the poor formatting, unclear action granularity, and disorganized reading flow significantly harm readability.
Run 1
Code Structure: The class is logically organized into construction, target configuration, method delegation, and string representation, but compressed formatting obscures boundaries. Nesting: Shallow overall; only a loop containing a conditional adds nesting. Clarity of intent: Class and method names communicate the transformer-chain purpose, though abbreviated variables and reverse wiring require attention. Code length: Concise, with little unnecessary code. Action granularity: Multiple imports, declarations, assignments, loops, and returns share lines, making individual actions harder to scan. Reading flow: Inconsistent indentation, crowded annotations, uneven parameter alignment, and closing braces beside statements disrupt otherwise straightforward execution flow.
Run 2
Code Structure: Fields and methods are logically organized, but compressed formatting obscures boundaries. Nesting: Shallow overall, with only a loop and conditional in toString. Clarity of intent: Class and method names communicate transformer chaining, although cv and v are terse and reverse wiring requires some attention. Code length: Compact and mostly necessary, but excessive line compression reduces readability rather than improving concision. Action granularity: Multiple declarations, statements, annotations, and braces share lines, making individual actions harder to distinguish. Reading flow: Inconsistent indentation, awkward parameter wrapping, and crowded method bodies interrupt an otherwise straightforward flow.
Run 3
Code Structure: The class is logically organized into construction, target wiring, method delegation, and string representation. Nesting: Shallow overall; only toString adds a conditional inside a loop. Clarity of intent: Class and method names communicate purpose, though abbreviated variables and reverse chain wiring require some interpretation. Code length: Concise, with little unnecessary code. Action granularity: Poor formatting places multiple statements, declarations, annotations, and braces on the same line, obscuring individual actions. Reading flow: Inconsistent indentation, compressed method bodies, and uneven parameter wrapping interrupt otherwise straightforward logic. Conventional formatting would substantially improve readability without changing the implementation.