Sample

Scalabrio20

Human rating uses the original dataset scale.

DatasetScalabrino
Human3.89
Lines28

Scores

MethodScoreScaleDataset rank
(0–100)
Posnett00–1; higher is more readable
21.1Δ 45.0
Scalabrino0.6760–1; higher is more readable
67.8Δ 1.8
Dorn0.310–1; higher is more readable
38.2Δ 27.9
Mi0.3110–1; higher is more readable
59.3Δ 6.8
LLOC21Logical lines; fewer is more readable
23.1Δ 43.0
DeepSeek V4 Pro16.670–20; mean of three runs
85.7Δ 19.6
GPT-6.1 Sol180–20; mean of three runs
83.7Δ 17.6
BTTF0.7420–1; higher is more readable
96.5Δ 30.4
Human3.891–5; original rating
66.1

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.1247.12−41.155
Source linesThe number of non-empty source lines.28+11.2
Byte entropyHow varied the bytes in the source text are. Repeated bytes give a lower value; a more even mixture gives a higher value.5.201−7.801

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

Score0.676

Feature contributions

FeatureValueContribution
(log-odds)
Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right.109+0.954
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.108.893−0.947
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.26−0.176
Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code.28+0.045
Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom.26.955−0.033
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.098−0.011

Intercept 0.07 + feature contributions = -0.801 (log-odds).
Score = sigmoid(-0.801) = 0.31.

Score0.311
Score21
Run 1

The code is highly readable due to its clear, consistent structure. Each type registration is on its own line, making the mapping between Java types and SQL types easy to scan. The constructor follows a logical sequence: column types, then functions, then properties. Nesting is minimal, and the intent is unambiguous. The formatting is clean, with aligned parameters and sensible spacing. Minor deductions: repeated method calls introduce some verbosity, the comment is redundant, and there is slight inconsistency in whitespace before the function registrations. Overall, the code is straightforward, maintainable, and easy to follow.

Run 2

The code is generally readable and well-structured. It clearly registers column types and functions in a logical sequence, with one action per line and consistent formatting. The method name and Javadoc indicate intent. However, there are minor issues: the Javadoc uses tabs instead of standard spacing, and there is an extra blank line before closing the constructor. The repeated registerColumnType calls are predictable but somewhat verbose—though acceptable for a dialect setup. Nesting is essentially flat, and reading flow is natural. Overall, it is readable but loses points for inconsistent indentation and minor formatting inconsistencies.

Run 3

The code is highly readable. It has a clear, single purpose: registering column types and functions for an Interbase dialect. The structure is logical and flat—no nested blocks. Each registration is a single action on its own line, with consistent formatting and spacing. Intent is obvious from method and function names. While the constructor is moderately long, the repetitive nature is inherent to dialect configuration and does not harm readability. Reading flow is natural and easy to scan.

Run 1

Code Structure: Logically organized into column-type registrations, function registrations, and default configuration, separated by blank lines. Nesting: Flat constructor body with no branching or nested control flow. Clarity of intent: Descriptive method names and explicit mappings make the purpose clear, though SQL placeholders and function constructor arguments require domain knowledge. Code length: Concise for the number of mappings; repetition is appropriate for declarative registration. Action granularity: Each statement performs one registration or configuration action on its own line. Reading flow: Consistent formatting and sequential setup make scanning easy. Minor weaknesses include uneven spacing in the concat registration, limited visual grouping within the type mappings, and a redundant constructor comment with a grammatical error.

Run 2

Code Structure: Logically organized into column-type registrations, function registrations, and default configuration, separated by blank lines. Nesting: Flat constructor body with no nested control flow. Clarity of intent: Descriptive method names and explicit SQL mappings make the purpose clear; the constructor comment adds little information. Code length: Concise for the number of mappings, with necessary repetition rather than unnecessary logic. Action granularity: Each statement performs one registration or configuration action. Reading flow: Consistent formatting and sequential initialization make the code easy to scan, although grouping related column types more systematically and improving spacing in the concat registration would enhance readability.

Run 3

Code Structure: The constructor logically groups column-type registrations, function registrations, and default properties, with blank lines separating sections. Nesting: The body is flat, with no conditional or loop nesting. Clarity of intent: Descriptive method names and explicit type mappings clearly communicate dialect initialization; the constructor comment adds little value. Code length: The length is appropriate for the required mappings, although the repeated registrations are visually monotonous. Action granularity: Each statement performs one registration or configuration action. Reading flow: Execution proceeds naturally from superclass initialization through mappings and functions to configuration. Minor weaknesses include long function-registration lines, inconsistent spacing within argument lists, and no section labels explaining the groups.