Skip to content
personnummerPublic

About

Validate Swedish personal identity numbers

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

36 Commits

Folders and files

Repository files navigation

haskell-personnummer

Test and lint

Validate Swedish personal identity numbers with Haskell

Usage

import Personnummer (isValid, toPersonnummer)

pnrIsValid :: Bool
pnrIsValid = isValid $ fromJust toPersonnummer "19900101-0017"

Run example

PATH=$(brew --prefix)/opt/llvm/bin:$PATH cabal run Personnummer  \
  --ghc-option=-fllvm

REPL

$ cabal repl
*Personnummer> isValidString "199001010018"
Fasle
$ cabal repl
*Personnummer> let pnr = fromJust $ toPersonnummer "9001010017"
*Personnummer> isValid pnr
True
*Personnummer> gender pnr
Male
*Personnummer> isFemale pnr
False
*Personnummer> format pnr True
"19900101-0017"
*Personnummer> getAge pnr
32

Test

cabal test --ghc-option=-fllvm

Formatter

ormolu

If you're using VS Code, configure

{
  "haskell.formattingProvider": "ormolu"
}

In memoriam

Fredrik "Frozzare" Forsmo (1991-2026) was the initiator, co-founder and a core contributor of the personnummer project. This library carries his work. He is missed.

About

Validate Swedish personal identity numbers

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages