Sample

Dorn/python/66

Human rating uses the original dataset scale.

DatasetDorn
Human3.79
Lines10

Scores

MethodScoreScaleDataset rank
(0–100)
Posnett0.9950–1; higher is more readable
97.5Δ 15.0
Scalabrino0.6630–1; higher is more readable
70.5Δ 11.9
Dorn0.9010–1; higher is more readable
94.4Δ 12.0
Mi0.4120–1; higher is more readable
40.9Δ 41.5
LLOC5Logical lines; fewer is more readable
78.0Δ 4.5
DeepSeek V4 Pro100–20; mean of three runs
40.9Δ 41.5
GPT-6.1 Sol16.330–20; mean of three runs
70.8Δ 11.7
BTTF0.710–1; higher is more readable
93.3Δ 10.9
Human3.791–5; original rating
82.5

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)
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.019−6.028
Source linesThe number of non-empty source lines.10+4
Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones.46.507−1.535

Intercept 8.87 + feature contributions = 5.307 (log-odds).
Score = sigmoid(5.307) = 0.995.

Score0.663

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.65+0.912
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.009+0.858
Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code.7+0.788
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
Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom.9.848−0.272
Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right.59.273+0.152

Intercept 0.07 + feature contributions = 2.204 (log-odds).
Score = sigmoid(2.204) = 0.901.

Score0.412
Score5
Run 1

The code is essentially an empty skeleton with two overridable methods containing only docstrings and pass statements. There is no functional logic to evaluate for structure, nesting, or granularity. The intent is relatively clear from the docstrings, but the overall value is minimal as incomplete scaffolding. It is not unreadable in the sense of being tangled, but it is devoid of meaningful content, making most criteria inapplicable.

Run 2

The code is clear and readable, with a flat structure and a natural reading flow. Each method is short and has a docstring that explains its intended purpose ('start' vs 'end' of a hierarchy level). The docstrings clearly state when the method is called and provide an example of a typical action ('indent some output'), which helps clarify intent. However, the methods contain only 'pass', which may make their purpose slightly ambiguous until the comment is read. The indentation of the docstrings is unusual and slightly disrupts the reading flow, though it does not affect logic. Action granularity is appropriate, with one logical action per line. Overall, the code is concise, well-structured, and easy to understand, but minor formatting quirks prevent a perfect score.

Run 3

The code consists of two methods with clear docstrings explaining their purpose, which aids clarity of intent. However, there are significant readability issues. The code is incomplete and lacks context—method signatures are absent, making it impossible to understand the class or parameters. The indentation is inconsistent: the first method appears over-indented, suggesting it may be part of a larger block, while the second is at a different level. Action granularity is poor, as each method only contains a `pass` statement after a multi-line docstring, making them feel like stubs with no actionable logic. The reading flow is disrupted by the inconsistent indentation and lack of surrounding structure. Code length is concise, but at the expense of missing essential context. Nesting is minimal, which is good, but overall structure is ambiguous without the enclosing class definition.

Run 1

Code Structure: Simple, logically related extension hooks, though the opening fragment lacks its method definition. Nesting: Flat method bodies with no nested control flow. Clarity of intent: Docstrings clearly describe when subclasses should override the hooks; pass indicates intentionally empty implementations. Code length: Concise, with useful documentation and little overhead. Action granularity: Each statement occupies its own line, and each hook has a single responsibility. Reading flow: Consistent formatting and spacing make the code easy to follow, but the incomplete first method interrupts the flow and limits standalone understanding.

Run 2

Code Structure: Logically organized as extension hooks, although the first method declaration is missing from the snippet. Nesting: Flat method bodies with no complex nesting. Clarity of intent: Docstrings clearly explain when subclasses should override these hooks; pass appropriately indicates no default action. Code length: Concise, with useful rather than excessive documentation. Action granularity: Each pass occupies its own line, and there are no combined operations. Reading flow: Consistent indentation and blank-line separation make the code easy to scan, but the incomplete opening method slightly disrupts comprehension.

Run 3

Code Structure: Simple, logically organized hook methods, though the first method's signature is missing from the excerpt. Nesting: Flat method bodies with no nested control flow. Clarity of intent: Docstrings clearly explain when each hook runs and why it might be overridden; pass appropriately indicates default no-op behavior. Code length: Concise, with documentation proportional to the functionality. Action granularity: Each statement occupies its own line, with no combined actions. Reading flow: Consistent indentation and spacing make the excerpt easy to scan, but the incomplete opening slightly interrupts comprehension.