Sample

Dorn/cuda/81

Human rating uses the original dataset scale.

DatasetDorn
Human2.63
Lines50

Scores

MethodScoreScaleDataset rank
(0–100)
Posnett00–1; higher is more readable
18.4Δ 3.1
Dorn0.4140–1; higher is more readable
33.4Δ 18.1
Mi0.0650–1; higher is more readable
9.2Δ 6.1
LLOC22Logical lines; fewer is more readable
26.7Δ 11.4
DeepSeek V4 Pro7.670–20; mean of three runs
27.2Δ 11.8
GPT-6.1 Sol9.670–20; mean of three runs
8.8Δ 6.5
BTTF0.4280–1; higher is more readable
28.4Δ 13.1
Human2.631–5; original rating
15.3

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.1774.877−58.571
Source linesThe number of non-empty source lines.50+20
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.965−7.447

Intercept 8.87 + feature contributions = -37.148 (log-odds).
Score = sigmoid(-37.148) = 0.

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.119−1.375
Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right.118.98+1.115
Indentation frequencyHow rapidly indentation changes from line to line.46+0.854
Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code.51−0.769
Number layout frequencyHow rapidly the number of numeric values per line changes through the code.46−0.635
Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom.49.933+0.288
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.086+0.106

Intercept 0.07 + feature contributions = -0.346 (log-odds).
Score = sigmoid(-0.346) = 0.414.

Score0.065
Score22
Run 1

The code suffers from several readability issues. It uses deeply nested conditionals (up to 4 levels) with complex boolean chains. NaN checks via self-equality comparisons (e.g., `x==x`) are non-obvious and should use explicit functions. The code repeats verbose multi-line variable declarations and lacks abstraction for repeated texture fetch logic. While structure is logical, the excessive nesting, magic numbers, unclear comments, and dense multi-line mathematical operations obscure intent. Action granularity is inconsistent and reading flow is disrupted by non-meaningful variable names and disorganized formatting.

Run 2

The code has some positive aspects like comments explaining the binning logic and reasonable naming conventions. However, it suffers from several readability issues. The nesting is deep (3-4 levels), making it hard to follow the logic flow. Multiple NaN checks using self-comparison (x==x) are cryptic and could be replaced with clearer functions. The initial conditional has five conditions on one line, violating action granularity. Magic numbers (-1, +2, c_Binning) appear throughout without clear explanation. The loop boundaries and binning calculations are difficult to parse. While the variable names are descriptive, the overall structure feels tangled, and the reading flow is disrupted by the complex nested conditionals and lack of separation between distinct logical operations. The code would benefit from extracting helper functions, reducing nesting depth, and clarifying the NaN checks.

Run 3

The code has significant readability issues. While it attempts logical organization with initialization blocks and a nested loop structure, the nesting depth reaches 4-5 levels, making the flow difficult to follow. The intent is partially documented via comments but relies on unclear variable naming and non-obvious NaN checks (x==x pattern) without explanation. The code is verbose with repetitive derivative variable declarations that could be consolidated. Action granularity is mixed - some lines combine multiple operations while others are appropriately granular. Reading flow is disrupted by excessive indentation, repeated self-comparisons, and mathematical operations buried in loop conditions. The histogram indexing and boundary checking logic requires domain knowledge to understand. While not completely unreadable, the combination of deep nesting, ambiguous NaN handling, and scattered related operations makes this code challenging to maintain.

Run 1

Code Structure: Validation, initialization, and histogram calculations have a logical sequence, but repeated per-axis declarations and inline texture offsets obscure organization. Nesting: Six levels of conditionals and loops make the main computation difficult to follow. Clarity of intent: Descriptive derivative names help, but self-comparisons used as NaN checks, vague names such as temp, and grammatically unclear comments require interpretation. Code length: Repetitive initialization and verbose conditions add length, although the arithmetic is reasonably concise. Action granularity: Most statements perform one action per line, with conventional multi-action loop headers. Reading flow: Inconsistent indentation, spacing, and dense indexing interrupt an otherwise sequential flow. The snippet also ends mid-block, limiting assessment of its overall structure.

Run 2

Code Structure: Validation, initialization, and histogram calculations are logically grouped, but repeated axis-specific variables create clutter. Nesting: Six levels of conditionals and loops make the computation difficult to follow; guard clauses or bounded loops could simplify it. Clarity of intent: Descriptive entropy variable names and spline function names help, but self-equality NaN checks, histogram offsets, and poorly worded comments require interpretation. Code length: Repetitive derivative declarations and checks make the snippet longer than necessary. Action granularity: Most lines perform one action, although loop headers and compound conditions are dense. Reading flow: The progression from validation to accumulation is sensible, but inconsistent indentation, lengthy expressions, and the snippet ending mid-block interrupt readability.

Run 3

Code Structure: Validation, initialization, and histogram calculations follow a logical order, but repeated per-axis declarations add clutter. Nesting: Two validation blocks, two loops, and two bounds checks create deep nesting that makes the core calculation harder to follow. Clarity of intent: Descriptive entropy variable names and spline functions help, but self-equality NaN checks, histogram offsets, and poorly worded comments require interpretation. Code length: Repetitive declarations and checks could be simplified using vector operations or helper functions. Action granularity: Most statements perform one action per line, although loop headers and compound conditions are dense. Reading flow: The progression is mostly natural, but inconsistent indentation, spacing, and lengthy conditions disrupt scanning. The snippet ends mid-block, limiting assessment of its overall organization.