Sample

Scalabrio156

Human rating uses the original dataset scale.

DatasetScalabrino
Human3.22
Lines25

Scores

MethodScoreScaleDataset rank
(0–100)
Posnett0.3670–1; higher is more readable
89.4Δ 62.1
Scalabrino0.2260–1; higher is more readable
18.6Δ 8.8
Dorn0.7460–1; higher is more readable
85.9Δ 58.5
Mi0.6720–1; higher is more readable
89.9Δ 62.6
LLOC3Logical lines; fewer is more readable
96.5Δ 69.1
DeepSeek V4 Pro12.330–20; mean of three runs
33.4Δ 6.0
GPT-6.1 Sol180–20; mean of three runs
83.7Δ 56.3
BTTF0.6750–1; higher is more readable
88.9Δ 61.6
Human3.221–5; original rating
27.4

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.417.786−13.787
Source linesThe number of non-empty source lines.25+10
Byte entropyHow varied the bytes in the source text are. Repeated bytes give a lower value; a more even mixture gives a higher value.3.751−5.627

Intercept 8.87 + feature contributions = -0.544 (log-odds).
Score = sigmoid(-0.544) = 0.367.

Score0.226

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.39.88+1.976
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
Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code.25+0.151
Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom.23.22−0.085
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.089+0.076

Intercept 0.07 + feature contributions = 1.079 (log-odds).
Score = sigmoid(1.079) = 0.746.

Score0.672
Score3
Run 1

The method is concise but lacks clarity of intent. It assembles a heterogeneous Object array by invoking many getter-like methods, with null elements used as delimiters. The purpose of the null entries is ambiguous without additional context. The structure is flat and each action is placed on one line, which supports action granularity, but the reading flow is unnatural due to arbitrary grouping and unexplained null separators. The method is not deeply nested, and code length is minimal, but the logic is opaque. A more readable approach would group related items into named collections or use a builder pattern to express intent.

Run 2

The code is straightforward and readable. The method has a single purpose—assembling an array of UML actions—and the array literal is formatted with one item per line, which improves scanning and maintains clear action granularity. The logical grouping using null separators is visible, though the intent of these nulls could be clarified with comments or constants. Nesting is minimal, structure is flat, and the code length is concise. The reading flow is natural, and the method returns the constructed array immediately, with no side effects or complex logic.

Run 3

The method is simple and its purpose is fairly clear: it assembles an array of UML-related actions. The code is flat, with no nesting, and each action is placed on its own line, which helps readability. However, there are several issues. The use of null placeholders is ambiguous—comment lines indicating what the nulls represent (e.g., separators or future items) would improve clarity. The method name 'getUmlActions' is understandable, but the array construction lacks context: why are some actions grouped together and others not? The reading flow is natural enough, but the structure feels somewhat arbitrary due to the null entries. Overall, it is readable but could be improved with comments or a more structured approach, so it scores moderately.

Run 1

Code Structure: A straightforward array initializer followed by a return is logically organized, with null entries apparently separating action groups. Nesting: Minimal nesting makes the method easy to scan. Clarity of intent: The method and action getter names clearly indicate UML action collection, although the meaning of null separators and the use of Object[] are not explicit. Code length: Concise, with only a slightly unnecessary local variable. Action granularity: Each action occupies its own line, improving readability. Reading flow: The consistent formatting and grouped sequence provide a natural top-to-bottom flow, though comments naming the groups could clarify the ordering.

Run 2

Code Structure: A straightforward method with a logically grouped action array and a clear return. Nesting: Minimal, with no nested control flow. Clarity of intent: The method and action names clearly indicate UML action collection, though null separators and the broad Object[] type leave some semantics implicit. Code length: Concise; the local variable could be omitted with a direct return, but it aids readability. Action granularity: Each array entry occupies its own line, making individual actions easy to identify. Reading flow: Natural top-to-bottom construction followed by return, with null entries visually separating groups.

Run 3

Code Structure: A single method builds and returns a logically grouped action array. Nesting: Minimal, with no branching or nested control flow. Clarity of intent: The method and action getter names clearly indicate UML actions, though the meaning of null entries is implicit. Code length: Concise; the temporary variable is optional but does not impede readability. Action granularity: Each array entry occupies its own line, making individual actions easy to scan. Reading flow: Consistent formatting and grouping support a natural top-to-bottom reading order, although comments explaining the null separators could improve clarity.