Sample
int-224c8a6f0b44-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.639 | 0–1; higher is more readable |
| Dorn | 0.027 | 0–1; higher is more readable |
| Mi | 0.03 | 0–1; higher is more readable |
| LLOC | 41 | Logical lines; fewer is more readable |
| DeepSeek V4 Pro | 4.67 | 0–20; mean of three runs |
| GPT-6.1 Sol | 11 | 0–20; mean of three runs |
| BTTF | 0.417 | 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. | 3526.302 | −116.368 |
| Source linesThe number of non-empty source lines. | 86 | +34.4 |
| Byte entropyHow varied the bytes in the source text are. Repeated bytes give a lower value; a more even mixture gives a higher value. | 5.146 | −7.719 |
Intercept 8.87 + feature contributions = -80.817 (log-odds).
Score = sigmoid(-80.817) = 0.
| Score | 0.639 |
|---|
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. | 228.989 | −6.034 |
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 229 | +2.89 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 86 | −2.009 |
| Indentation frequencyHow rapidly indentation changes from line to line. | 54 | +1.131 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 53 | −0.795 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 85.761 | +0.789 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.059 | +0.372 |
Intercept 0.07 + feature contributions = -3.586 (log-odds).
Score = sigmoid(-3.586) = 0.027.
| Score | 0.03 |
|---|
| Score | 41 |
|---|
Run 1
The code is functionally sophisticated but fails readability standards. Structure is impaired by inconsistent indentation and compressed lines combining imports and statements. Nesting is acceptable but formatting hides it, e.g., collapsed one-line methods. Clarity of intent is undermined by terse comments and magic constants; the long method `bigToDouble` is particularly dense, mixing bit manipulation, shifting, and rounding logic in a block that is hard to follow. Code length is not the issue, but several lines attempt multiple actions, violating the 'one action per line' rule. Reading flow is disorganized due to inconsistent bracing, alignment, and placement of the `ONE_BITS` field at the end. While the algorithms may be correct, the presentation makes the code nearly unreadable for a newcomer. A clean-up with proper formatting, line breaks, and explanatory comments would raise the score substantially.
Run 2
The code is highly unreadable due to severe formatting issues. Multiple statements are crammed onto single lines, making it difficult to distinguish where one logical operation ends and another begins. The nesting is not deeply indented, but the lack of line breaks creates a tangled structure. Several methods are compressed together, such as getSignificand and bigToDouble, which have multiple actions on one line. Comments are interspersed with code and sometimes split awkwardly, disrupting the reading flow. The intent is present in comments but obscured by poor layout. Code length is not excessive, but the formatting makes it unnecessarily dense. Action granularity is poor: many lines contain two or more operations, sometimes with control flow mixed in. Overall, the reader must expend extra effort to parse the code, significantly reducing readability despite the underlying logic being reasonably straightforward.
Run 3
The code has severe readability problems. The structure is disorganized: constants are scattered, methods are intermixed without logical grouping, and there is inconsistent indentation and spacing. Multiple statements are crammed onto single lines, making it difficult to parse individual operations. While some comments explain tricky bit-manipulation logic, they are inconsistently placed and sometimes interrupt the flow. Method names generally convey intent, but the dense, compressed formatting obscures the underlying algorithms. The bigToDouble method is especially hard to follow due to its length, deep arithmetic expressions, and lack of visual breaks between logical steps. Nesting is not excessive, but the overall lack of whitespace and structure makes the code feel tangled and difficult to scan.
Run 1
Code Structure: Related utilities and named constants provide logical organization, but compressed method boundaries obscure it. Nesting: Shallow conditionals and early returns keep control flow simple. Clarity of intent: Descriptive names and detailed comments explain floating-point manipulation and rounding, although dense bitwise expressions require careful reading. Code length: Implementation is reasonably concise; explanatory comments are useful rather than unnecessary. Action granularity: Multiple imports, declarations, assignments, and returns share lines, making individual actions harder to distinguish. Reading flow: Inconsistent spacing, inline annotations, crowded braces, and comments attached to method endings interrupt otherwise coherent progression. The underlying design is readable, but poor formatting significantly reduces scanability.
Run 2
Code Structure: Cohesive utility methods and named constants provide logical organization, but compressed method boundaries obscure it. Nesting: Shallow conditionals and early returns keep control flow easy to follow. Clarity of intent: Descriptive names and detailed comments explain the bit manipulation and rounding logic, although the numerical operations require careful reading. Code length: The implementation is reasonably concise; extensive comments are justified by algorithmic complexity. Action granularity: Multiple imports, declarations, assignments, returns, and even method definitions share lines, significantly reducing readability. Reading flow: Inconsistent spacing, indentation, and comments attached to closing braces interrupt an otherwise natural progression from constants to helper methods and conversion logic.
Run 3
Code Structure: Constants and focused utility methods provide logical organization, but compressed method boundaries obscure it. Nesting: Mostly flat, with shallow conditionals and early returns. Clarity of intent: Descriptive names and detailed comments explain complex floating-point operations, although bit manipulation requires specialist knowledge. Code length: The implementation is reasonably concise; explanatory comments are useful rather than excessive. Action granularity: Multiple imports, declarations, assignments, and returns share lines, making individual steps harder to distinguish. Reading flow: Inconsistent indentation, inline comments, and adjacent method definitions interrupt otherwise logical progression. Overall, sound organization and documentation are undermined by poor formatting.