haskell / haskell/binary

Redundant length in array instances

Open
#241 0 comments 1 reaction 0 assignees View on GitHub
Dominant language
Haskell
Stars
120
Forks
70
PR merge metrics
No merged PRs in 30d

Description

The `Binary` instances for `Array i e` and `UArray i e` serialise the length of the array. This is redundant, since the length can be computed from the bounds (which are also serialised).

Getting rid of the length would save 8 bytes. The question is if it's worth it to potentially break code for this (small?) gain.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating the Binary instances for Array i e and UArray i e and reviewing how their bounds and lengths are serialized. Determine whether removing the length is compatible with existing serialized data and whether the 8-byte saving justifies the break; the issue is done only once that compatibility question has a clear decision and agreed scope.

Written by the indexing model from the issue text.

Assessment

Tech stack
haskell
Domain
data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.