Sample
pyint-d1d84b0098d1-I13
Lower every eligible synchronous for loop to a while loop
Scores
| Method | Score | Scale |
|---|---|---|
| Posnett | 0 | 0–1; higher is more readable |
| Dorn | 0.808 | 0–1; higher is more readable |
| Mi | 0.165 | 0–1; higher is more readable |
| LLOC | 18 | Logical lines; fewer is more readable |
| DeepSeek V4 Pro | 17 | 0–20; mean of three runs |
| GPT-6.1 Sol | 18 | 0–20; mean of three runs |
| BTTF | 0.561 | 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. | 652.329 | −21.527 |
| Source linesThe number of non-empty source lines. | 29 | +11.6 |
| 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.388 | −6.582 |
Intercept 8.87 + feature contributions = -7.639 (log-odds).
Score = sigmoid(-7.639) = 0.
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 96 | +0.744 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.05 | +0.459 |
| 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. | 96 | −0.401 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 1 | +0.398 |
| Indentation frequencyHow rapidly indentation changes from line to line. | 27 | +0.197 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 30 | −0.026 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 28.763 | −0.008 |
Intercept 0.07 + feature contributions = 1.434 (log-odds).
Score = sigmoid(1.434) = 0.808.
| Score | 0.165 |
|---|
| Score | 18 |
|---|
Run 1
The code is well-structured and readable. It follows a clear logical organization, with a focused class definition and minimal nesting. The intent is immediately understandable: a validator that checks if a value matches a regular expression. Variable names are descriptive ('pattern', 'match_func', 'inst', 'attr', 'value'). The error message is informative and includes relevant context. The __repr__ method clearly summarizes the validator. The only minor deductions are for slight verbosity in the docstring (attribution is implicit) and the somewhat compressed conditional raise, although it remains clear. Overall, the code is concise, easy to follow, and maintains a natural reading flow.
Run 2
The code is well-structured and highly readable. It uses a clear class-based approach with attrs, which keeps the definition concise. Nesting is minimal, with only one level inside the __call__ method. The purpose is explicit: validate a string against a regex pattern. Lines are concise and each line generally performs one action. The reading flow is natural—imports, class definition, then method logic. The only minor deductions are due to the slightly dense error message construction and the reliance on external attrs features, which may require familiarity with the library. Overall, it is clean, maintainable, and purposeful.
Run 3
The code is well-structured and readable. It uses a clear class-based approach for a regex validator with the attrs library, keeping the structure logical and flat. Nesting is minimal, limited to a single conditional inside the __call__ method. The intent is explicit: validate that a value matches a regex pattern and raise a descriptive error if not. The code is concise, avoiding unnecessary verbosity, though the error message construction is a bit long but justifiably informative. Each line performs a single logical action, and the reading flow is natural — imports, class definition, logic, and repr. Minor deductions stem from slightly dense imports and the use of decorators that assume familiarity with attrs, which may slightly reduce clarity for less experienced readers.
Run 1
Code Structure: The validator is logically organized into attributes, validation behavior, and representation, though several unused imports add clutter. Nesting: A single conditional keeps control flow shallow and easy to follow. Clarity of intent: Descriptive class and attribute names clearly convey regex validation; the __call__ docstring explains the callable-class design rather than the method’s behavior. Code length: The implementation is concise, although the multiline exception construction could be more compact. Action granularity: Each statement performs one clear action, with message construction separated from raising the exception. Reading flow: Imports, class configuration, attributes, and methods follow a conventional order. Framework-specific decorators and attribute declarations require some familiarity, but overall readability is high.
Run 2
Code Structure: The validator is logically organized into attributes, validation behavior, and representation, though several imports are unused in this snippet. Nesting: A single conditional keeps control flow shallow. Clarity of intent: Descriptive class and attribute names, together with a detailed error message, make regex validation clear; the docstring explains the callable-class design rather than the method's behavior. Code length: The implementation is concise, although the multiline exception construction is slightly verbose. Action granularity: Each statement performs one clear action. Reading flow: The progression from configuration to validation to representation is natural, with minor friction from framework-specific decorators and the long error-message line.
Run 3
Code Structure: The validator is logically organized into attributes, validation behavior, and representation, though several imports are unused in this snippet. Nesting: A single conditional keeps control flow shallow. Clarity of intent: Descriptive names and the error message clearly communicate regex validation; the docstring explains the callable-class design rather than the method's behavior. Code length: The implementation is concise, although the multiline exception construction is slightly verbose. Action granularity: Each statement performs one clear action. Reading flow: Attributes followed by __call__ and __repr__ create a natural progression; minimal spacing between imports and the class slightly reduces visual separation.