-
Notifications
You must be signed in to change notification settings - Fork 28
Open
Labels
C-internalInternal library improvementsInternal library improvementsE-help wantedExtra attention is neededExtra attention is neededMediumMedium difficulty issue to fixMedium difficulty issue to fixtest262Issue related to test262 conformanceIssue related to test262 conformance
Milestone
Description
Currently, Duration uses FiniteF64 for it's field. It would be nice to move away from FiniteF64 for the internal representation and use i64 or u32 and u64.
Below are some pseudo representations (not including DateDuration or TimeDuration):
struct Duration {
years: i64,
months: i64,
weeks: i64,
days: i64,
hours: i64,
minutes: i64,
seconds: i64,
milliseconds: i64,
microseconds: i64,
nanoseconds: i64,
}struct Duration {
sign: Sign,
years: u32,
months: u32,
weeks: u32,
days: u64,
hours: u64,
minutes: u64,
seconds: u64,
milliseconds: u64,
microseconds: u64,
nanoseconds: u64,
}General things that need to be considered.
- How will this interface with engines where inputs may be in a range of 2^53 - 1?
- Is there any point in the operations of the Temporal specification where precision on an unbalanced duration may matter?
- Should
DateDurationandTimeDurationbe preserved in favor of using the above as the external Duration and a new "internal Duration" for calculation purposes?
Metadata
Metadata
Assignees
Labels
C-internalInternal library improvementsInternal library improvementsE-help wantedExtra attention is neededExtra attention is neededMediumMedium difficulty issue to fixMedium difficulty issue to fixtest262Issue related to test262 conformanceIssue related to test262 conformance
Type
Projects
Status
Backlog