Skip to content
This repository has been archived by the owner on Jun 1, 2023. It is now read-only.

use arith 'exact'/'fast' #21

Open
rurban opened this issue Sep 11, 2015 · 2 comments
Open

use arith 'exact'/'fast' #21

rurban opened this issue Sep 11, 2015 · 2 comments
Assignees

Comments

@rurban
Copy link
Member

rurban commented Sep 11, 2015

New lexical pragma for exact or fast arith, promote to double or bigint? We probably need a PL_hints bit for this, more then for no magic or strict names.

Add a core pragma to select arithmetic overflow semantics.
Overflow to fast NV (double) as with perl5, or to exact bigint/num/rat as with perl6.

@rurban rurban self-assigned this Sep 11, 2015
@rurban
Copy link
Member Author

rurban commented Dec 9, 2015

See e.g. 2713d58
for pp_add with exactarith instead of promoting to NV. Note that NV overflow/precision loss is not done there yet.

rurban pushed a commit that referenced this issue Apr 5, 2019
Promote on overflow to bigint, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6, just much faster. (only in the rare 1% overflow case)

It is of course a bit slower than without, but I could not
measure any difference.

See #21.
rurban pushed a commit that referenced this issue Apr 30, 2019
Promote on overflow to bigint/num, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6.

It is of course a bit slower than without.

Closes #21.
rurban pushed a commit that referenced this issue Apr 30, 2019
Promote on overflow to bigint, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6, just much faster. (only in the rare 1% overflow case)

It is of course a bit slower than without, but I could not
measure any difference.

See #21.
rurban pushed a commit that referenced this issue Jun 6, 2019
Fixes Devel-PPPort GH #21

To avoid confusion rename the template for RealPPPort.xs
file as RealPPPort_xs.PL so it's now clear what file
it generates.
rurban pushed a commit that referenced this issue Jun 6, 2019
Fixes Devel-PPPort GH #21

To avoid confusion rename the template for RealPPPort.xs
file as RealPPPort_xs.PL so it's now clear what file
it generates.

(cherry picked from commit 0f14f67)
Signed-off-by: Nicolas R <[email protected]>
rurban pushed a commit that referenced this issue Jun 12, 2019
Promote on overflow to bigint/num, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6.

It is of course a bit slower than without.

Closes #21.
rurban pushed a commit that referenced this issue Jun 12, 2019
Promote on overflow to bigint, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6, just much faster. (only in the rare 1% overflow case)

It is of course a bit slower than without, but I could not
measure any difference.

See #21.
rurban pushed a commit that referenced this issue Jun 24, 2019
Promote on overflow to bigint, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6, just much faster. (only in the rare 1% overflow case)

It is of course a bit slower than without, but I could not
measure any difference.

See #21.
rurban pushed a commit that referenced this issue Jun 24, 2019
Promote on overflow to bigint/num, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6.

It is of course a bit slower than without.

Closes #21.
rurban pushed a commit that referenced this issue Jun 26, 2019
Promote on overflow to bigint/num, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6.

It is of course a bit slower than without.

Closes #21.
rurban pushed a commit that referenced this issue Jun 26, 2019
Promote on overflow to bigint, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6, just much faster. (only in the rare 1% overflow case)

It is of course a bit slower than without, but I could not
measure any difference.

See #21.
rurban pushed a commit that referenced this issue Jun 27, 2019
Promote on overflow to bigint/num, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6.

It is of course a bit slower than without.

Closes #21.
rurban pushed a commit that referenced this issue Jul 1, 2019
Promote on overflow to bigint, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6, just much faster. (only in the rare 1% overflow case)

It is of course a bit slower than without, but I could not
measure any difference.

See #21.
rurban pushed a commit that referenced this issue Jul 1, 2019
Promote on overflow to bigint/num, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6.

It is of course a bit slower than without.

Closes #21.
rurban pushed a commit that referenced this issue Jul 2, 2019
Promote on overflow to bigint, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6, just much faster. (only in the rare 1% overflow case)

It is of course a bit slower than without, but I could not
measure any difference.

See #21.
rurban pushed a commit that referenced this issue Jul 2, 2019
Promote on overflow to bigint/num, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6.

It is of course a bit slower than without.

Closes #21.
rurban pushed a commit that referenced this issue Jul 2, 2019
Promote on overflow to bigint, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6, just much faster. (only in the rare 1% overflow case)

It is of course a bit slower than without, but I could not
measure any difference.

See #21.
rurban pushed a commit that referenced this issue Jul 2, 2019
Promote on overflow to bigint/num, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6.

It is of course a bit slower than without.

Closes #21.
rurban pushed a commit that referenced this issue Jul 2, 2019
Promote on overflow to bigint, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6, just much faster. (only in the rare 1% overflow case)

It is of course a bit slower than without, but I could not
measure any difference.

See #21.
rurban pushed a commit that referenced this issue Jul 2, 2019
Promote on overflow to bigint/num, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6.

It is of course a bit slower than without.

Closes #21.
rurban pushed a commit that referenced this issue Jul 3, 2019
Promote on overflow to bigint/num, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6.

It is of course a bit slower than without.

Closes #21.
rurban pushed a commit that referenced this issue Jul 3, 2019
Promote on overflow to bigint, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6, just much faster. (only in the rare 1% overflow case)

It is of course a bit slower than without, but I could not
measure any difference.

See #21.
rurban pushed a commit that referenced this issue Aug 25, 2019
Promote on overflow to bigint, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6, just much faster. (only in the rare 1% overflow case)

It is of course a bit slower than without, but I could not
measure any difference.

See #21.
rurban pushed a commit that referenced this issue Aug 25, 2019
Promote on overflow to bigint/num, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6.

It is of course a bit slower than without.

Closes #21.
rurban pushed a commit that referenced this issue Dec 17, 2019
Promote on overflow to bigint/num, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6.

It is of course a bit slower than without.

Closes #21.
rurban pushed a commit that referenced this issue Dec 17, 2019
Promote on overflow to bigint, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6, just much faster. (only in the rare 1% overflow case)

It is of course a bit slower than without, but I could not
measure any difference.

See #21.
rurban pushed a commit that referenced this issue Jan 19, 2020
Promote on overflow to bigint/num, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6.

It is of course a bit slower than without.

Closes #21.
rurban pushed a commit that referenced this issue Jan 19, 2020
Promote on overflow to bigint, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6, just much faster. (only in the rare 1% overflow case)

It is of course a bit slower than without, but I could not
measure any difference.

See #21.
rurban pushed a commit that referenced this issue Jan 19, 2020
Promote on overflow to bigint/num, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6.

It is of course a bit slower than without.

Closes #21.
rurban pushed a commit that referenced this issue Jan 19, 2020
Promote on overflow to bigint, and not to NV.
This is a new lexical user-pragma to use exact
arithmetic without loosing precision on all builtin arithmetic ops.
As in perl6, just much faster. (only in the rare 1% overflow case)

It is of course a bit slower than without, but I could not
measure any difference.

See #21.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant