This is an alternative site for discovering Elm packages. You may be looking for the official Elm package site instead.
We were not able to find the expected elm-package.json file at this tag.
Tag 2.1.2
Committed At 2018-12-18 01:16:16 UTC




    elm-package CircleCI

    Unsigned 32 or 64 bit integers and related operations.

    Use the Word type to hold either 32 or 64 bit unsigned integers. Use the exposed type constructors W (for "word") and D (for "double word") to store values as words.

    import Word exposing (Word(D, W))


    The following operations are provided.

    • add - modulo addition
    • and - bitwise and
    • xor - bitwise xor
    • complement - bitwise inversion
    • rotateRightBy - rotate right
    • shiftRightZfBy - logical shift right

    Note that the set of operations is the minimal required to implement SHA-2.


    Addition of words is modulo 32 bits.

    add (W 0x80000000)
        (W 0x80000003)
    --> W 3

    Addition of double words is modulo 64 bits.

    add (D 0 0xFFFFFFFF)
        (D 0 1)
    --> D 1 0

    Large Values in Elm

    Double words are stored as two 32 bit values because Elm makes arithmetic mistakes with larger values. For example, try typing this into the elm repl:

    $ elm repl
    ---- elm-repl 0.18.0 -----------------------------------------------------------
    > 2 ^ 60 + 55 == 2 ^ 60
    True : Bool

    Related Libraries