Sample

Scalabrio169

Human rating uses the original dataset scale.

DatasetScalabrino
Human4.22
Lines22

Scores

MethodScoreScaleDataset rank
(0–100)
Posnett0.0040–1; higher is more readable
79.4Δ 3.5
Scalabrino0.4630–1; higher is more readable
44.2Δ 38.7
Dorn0.2640–1; higher is more readable
35.2Δ 47.7
Mi0.8430–1; higher is more readable
99.0Δ 16.1
LLOC14Logical lines; fewer is more readable
49.2Δ 33.7
DeepSeek V4 Pro16.330–20; mean of three runs
80.9Δ 2.0
GPT-6.1 Sol170–20; mean of three runs
58.5Δ 24.4
BTTF0.6810–1; higher is more readable
90.5Δ 7.5
Human4.221–5; original rating
82.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.495.158−16.34
Source linesThe number of non-empty source lines.22+8.8
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.617−6.926

Intercept 8.87 + feature contributions = -5.596 (log-odds).
Score = sigmoid(-5.596) = 0.004.

Score0.463

Feature contributions

FeatureValueContribution
(log-odds)
Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code.1+1.001
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 (horizontal)How rapidly the visual pattern of identifier characters changes from left to right. It measures spatial frequency, not the meaning of the names.99.955−0.568
Number layout frequencyHow rapidly the number of numeric values per line changes through the code.1+0.398
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.127−0.295
Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom.20.653−0.121

Intercept 0.07 + feature contributions = -1.023 (log-odds).
Score = sigmoid(-1.023) = 0.264.

Score0.843
Score14
Run 1

The code demonstrates excellent structure and readability. It follows a clear logical progression for equals() implementation: identity check, superclass comparison, class compatibility, and field comparison. Nesting is minimal, with only one necessary null-check conditional. Intent is unambiguous—each guard clause clearly validates a specific equality requirement. The code is concise with no redundancy. Action granularity is appropriate, with one logical check per if statement. Reading flow is natural and sequential. Minor deductions: the method lacks an @Override annotation for equals(Object) in the snippet, and the entity/field naming is verbose (though descriptive). The null-check pattern could potentially be simplified using Objects.equals(), but the current approach remains highly readable.

Run 2

The code is generally readable with clear intent and logical flow for a standard equals implementation. Structure is logical: identity check, superclass comparison, class check, field comparison. Nesting is minimal—only two levels for null-safe field comparison, which is acceptable. Action granularity is mostly one action per line. However, readability is slightly reduced by the verbose null-check block for alternateValue, which could be simplified with Objects.equals. The lack of @Override annotation is a minor issue (likely present but omitted in snippet). Overall, the method is conventional and easy to follow, but the null-handling section adds unnecessary length compared to more concise alternatives.

Run 3

The code is logically structured and follows a standard equals() pattern. It uses flat nesting with early returns, making the flow easy to follow. Each condition is separated on its own line, and action granularity is clear. The null-check on alternateValue is slightly nested but still readable. Clarity of intent is good, though the entity name is long and reduces readability slightly. Overall, the code is concise and follows common Java conventions.

Run 1

Code Structure: Logically organized equality checks with early returns. Nesting: Mostly flat, with only one nested null-handling condition. Clarity of intent: The standard equals pattern clearly communicates the purpose, though null safety depends on super.equals rejecting null. Code length: Reasonably concise, but the final comparison could be simplified using Objects.equals. Action granularity: Each statement performs one action. Reading flow: Checks progress naturally from identity to superclass equality, class compatibility, and field equality. The long entity type name and slightly verbose null comparison modestly reduce readability.

Run 2

Code Structure: A conventional equals implementation, logically organized around identity, superclass equality, type, and field comparison. Nesting: Mostly flat early returns, with only one nested null-check block. Clarity of intent: Equality checks are explicit and easy to understand, though null safety depends on superclass behavior. Code length: Reasonably concise, but the field comparison could be shortened using Objects.equals. Action granularity: Each statement performs one clear action. Reading flow: Checks proceed naturally from general identity to specific state comparison; the long entity type name and slightly verbose null handling add minor reading overhead.

Run 3

Code Structure: Logically organized equality checks with early returns. Nesting: Mostly flat, with only one nested null-check branch. Clarity of intent: The standard equals pattern makes the purpose clear, though superclass behavior must be understood. Code length: Reasonably concise, but the final null-safe comparison could be simplified with Objects.equals. Action granularity: Each statement performs a single action. Reading flow: Checks progress naturally from identity to superclass equality, class compatibility, and field equality. The long entity type name and slightly verbose null handling add minor reading friction.