Sample
pyint-9681fb8e0e25-I03
Replace names with length-matched meaningful but unrelated identifiers
Scores
| Method | Score | Scale |
|---|---|---|
| Posnett | 0.199 | 0–1; higher is more readable |
| Dorn | 0.767 | 0–1; higher is more readable |
| Mi | 0.655 | 0–1; higher is more readable |
| LLOC | 23 | Logical lines; fewer is more readable |
| DeepSeek V4 Pro | 17.33 | 0–20; mean of three runs |
| GPT-6.1 Sol | 18.67 | 0–20; mean of three runs |
| BTTF | 0.736 | 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. | 659.075 | −21.749 |
| Source linesThe number of non-empty source lines. | 47 | +18.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.877 | −7.315 |
Intercept 8.87 + feature contributions = -1.395 (log-odds).
Score = sigmoid(-1.395) = 0.199.
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 48 | −0.663 |
| Indentation frequencyHow rapidly indentation changes from line to line. | 39 | +0.612 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.034 | +0.608 |
| 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. | 74.958 | +0.49 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 39 | −0.474 |
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 68.729 | +0.304 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 46.855 | +0.245 |
Intercept 0.07 + feature contributions = 1.193 (log-odds).
Score = sigmoid(1.193) = 0.767.
| Score | 0.655 |
|---|
| Score | 23 |
|---|
Run 1
The code demonstrates strong readability through clear module organization with logical import grouping, a well-named sentinel class, and appropriate use of enums. The structure is flat with minimal nesting, making the control flow easy to follow. The class purpose is immediately apparent from the docstring, which also includes helpful version annotations. The implementation is concise, using enum.auto() appropriately, and each method contains a single clear action. The reading flow is natural, with imports organized by type (future, stdlib, typing, third-party) followed by the class definition. Minor deductions possible for the large number of imports without immediate context, but this is justified for a foundational module. The code follows idiomatic Python patterns and would be easily understood by experienced developers.
Run 2
The code demonstrates strong readability through clear structure and organization. The imports are logically grouped (standard library, third-party, local modules) and each import serves an apparent purpose. The _Nothing class uses an Enum with proper documentation, including version notes that provide historical context. The sentinel pattern is well-implemented with clear docstring explaining the rationale for using an Enum over None. Naming conventions are descriptive and follow Python standards. The class methods are concise with single responsibilities. The nesting is minimal, with no deep indentation levels. Type hints from __future__ import show forward-looking compatibility. Minor deductions: some imported symbols like _lazy_is_generator and _AnnotationExtractor are not immediately obvious in purpose, and the import list is lengthy, requiring readers to scan through many names. The code could benefit from grouping related imports with brief comments. Overall, the code prioritizes clarity through documentation and logical organization, making it highly maintainable for both current and future developers.
Run 3
The code is highly readable. Imports are logically organized and grouped, with clear separation of standard library, third-party, and local modules. The module uses modern Python features like `from __future__ import annotations` and `enum.Enum` for the sentinel `_Nothing`. The `_Nothing` class is concise, with clear intent and proper documentation, including version notes. Indentation is flat, and each action is on its own line. Naming is descriptive and consistent with Python conventions. The code is not excessively long; it only includes what appears necessary for the snippet. Overall, the structure and flow make the code easy to understand and maintain.
Run 1
Code Structure: Imports are grouped logically, followed by a small, cohesive sentinel class. Nesting: Minimal nesting makes the code easy to scan. Clarity of intent: The descriptive docstring explains why the sentinel exists, and the methods clearly define its representation and truthiness. Code length: The implementation is concise; compatibility notes add useful context, though many imports are unused in this excerpt. Action granularity: Each statement performs one action, with no compressed multi-action lines. Reading flow: The progression from dependencies to documentation, enum member, and behavior is natural. A second blank line before the top-level class would slightly improve visual separation.
Run 2
Code Structure: Imports precede a small, logically organized sentinel enum. Nesting: Minimal, with only class and method scopes. Clarity of intent: The descriptive docstring clearly explains the sentinel's purpose, and the methods express its representation and truthiness directly. Code length: The implementation is concise; the extensive imports add some reading overhead relative to the small excerpt. Action granularity: Each statement performs a single action. Reading flow: The progression from dependencies to documentation, enum value, and behavior is natural, though stronger spacing between import groups and before the class would improve visual separation.
Run 3
Code Structure: Imports are grouped by source, followed by a self-contained sentinel class, though many imports are unused in this excerpt. Nesting: Minimal, with only class and method scopes. Clarity of intent: The descriptive docstring clearly explains why the sentinel exists, while __repr__ and __bool__ make its behavior explicit. Code length: The implementation is concise; the extensive import list and version-history documentation add some overhead relative to the small class. Action granularity: Each statement performs one clear action, with no compressed multi-action lines. Reading flow: The code progresses naturally from dependencies to definition and behavior, although an additional blank line before the top-level class would improve visual separation.