Sample

Scalabrio174

Human rating uses the original dataset scale.

DatasetScalabrino
Human3.44
Lines33

Scores

MethodScoreScaleDataset rank
(0–100)
Posnett0.0240–1; higher is more readable
83.9Δ 44.0
Scalabrino0.6330–1; higher is more readable
63.3Δ 23.4
Dorn0.2350–1; higher is more readable
28.1Δ 11.8
Mi0.1030–1; higher is more readable
36.7Δ 3.3
LLOC10Logical lines; fewer is more readable
68.6Δ 28.6
DeepSeek V4 Pro8.670–20; mean of three runs
12.8Δ 27.1
GPT-6.1 Sol14.670–20; mean of three runs
13.8Δ 26.1
BTTF0.6090–1; higher is more readable
73.4Δ 33.4
Human3.441–5; original rating
39.9

Views

Download official ZIP ↗

Select the downloaded ZIP or its extracted folder. Files stay in your browser.

Loading feature diagnosis…

Source regions

Feature contributions

Feature contributions

FeatureValueContribution
(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.589.371−19.449
Source linesThe number of non-empty source lines.33+13.2
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.222−6.332

Intercept 8.87 + feature contributions = -3.712 (log-odds).
Score = sigmoid(-3.712) = 0.024.

Score0.633

Feature contributions

FeatureValueContribution
(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.124.97−1.628
Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right.0−0.804
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.048+0.479
Indentation frequencyHow rapidly indentation changes from line to line.33+0.404
Number layout frequencyHow rapidly the number of numeric values per line changes through the code.1+0.398
Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code.33−0.132
Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom.31.722+0.034

Intercept 0.07 + feature contributions = -1.18 (log-odds).
Score = sigmoid(-1.18) = 0.235.

Score0.103
Score10
Run 1

The code has a clear purpose but suffers from structural and formatting issues. The method structure is logical, containing a single anonymous class registration with overridden methods. However, indentation is inconsistent and excessive, making the code appear disorganized. The anonymous Integrator has three methods: two integrate overloads and one disintegrate. The duplication of integrate methods that both call a private helper is a reasonable pattern, but the private helper method hides the actual functionality. Nesting is moderate - the anonymous class is nested within the method call, but not deeply nested. Action granularity is generally acceptable, though the long serviceRegistry.getService() line with chained method calls could benefit from breaking into multiple lines. Reading flow is disrupted by inconsistent spacing and indentation. The code would be more readable with proper formatting and better separation of the anonymous class from the method call.

Run 2

The code suffers from poor readability due to several issues. The structure is tangled with an anonymous inner class containing multiple overridden methods, making it hard to follow. Nesting is deep—there are three levels of indentation before reaching actual logic. Intent is obscured by the redundant method overloads and unclear naming ('Integrator' is vague). The code is unnecessarily long for what it does: two 'integrate' methods delegate to a private helper, adding boilerplate. Action granularity is inconsistent—some lines contain multiple method calls or complex parameter lists. Reading flow is disrupted by inconsistent indentation (tabs vs spaces) and awkward line breaks in method signatures. The method names are overloaded but have different parameter types, which can confuse readers. The anonymous class could be replaced with a lambda or simpler delegation. Overall, the code works but requires significant mental effort to parse, earning a low readability score.

Run 3

The code is difficult to read due to inconsistent indentation, mixed naming conventions, and confusing structure. The overridden method has excessive indentation, making it hard to follow. Two overloaded `integrate` methods both delegate to a private method, which is logical but obscured by formatting. Variable names are clear, but the method name `integrate` is overloaded, reducing clarity. There are multiple actions per line (method declarations split oddly), and trailing empty methods add noise. Deep nesting from anonymous class + method overrides harms readability. The intent exists but is buried under poor formatting and redundant delegation. Overall, the logic is not deeply complex, but presentation significantly reduces readability.

Run 1

Code Structure: The bootstrap setup is logically organized, and both integrate overloads delegate to a shared helper, avoiding duplication. Nesting: The anonymous Integrator adds moderate nesting but no complicated control flow. Clarity of intent: Registering a custom load listener is understandable, although the helper name integrate is generic and the empty disintegrate method is unexplained. Code length: Reasonably concise given the interface requirements, but expansive line wrapping adds visual bulk. Action granularity: Statements generally perform one coherent action; the chained service lookup and listener registration remain understandable. Reading flow: Delegation creates a natural flow, but inconsistent indentation, spacing, and parameter alignment make the code harder to scan.

Run 2

Code Structure: Logically organized around registering an Integrator, with shared behavior extracted into a helper. Nesting: The anonymous class adds moderate nesting, but there are no deeply nested control structures. Clarity of intent: Method names and event registration communicate the purpose, although overloaded integrate methods and the unexplained empty disintegrate method require some contextual knowledge. Code length: Reasonably concise given the interface requirements; delegation avoids duplicated listener registration. Action granularity: Each statement performs one primary action, though the chained service lookup and listener registration are somewhat dense. Reading flow: Execution flows naturally from superclass setup to registration and delegation, but inconsistent indentation, spacing, and parameter wrapping noticeably disrupt readability.

Run 3

Code Structure: The bootstrap customization is logically organized, and a shared helper avoids duplicating listener registration. Nesting: The anonymous Integrator adds moderate nesting, but the methods remain simple. Clarity of intent: Registering a custom load listener is understandable, although the overloaded integrate methods and empty disintegrate method require framework knowledge. Code length: Reasonably concise given the interface requirements, though inconsistent line wrapping makes it appear longer. Action granularity: Each statement performs one main action; the chained service lookup and listener registration are still easy to follow. Reading flow: Delegation flows naturally to the helper, but mixed indentation, spacing, and parameter alignment interrupt scanning.