{-# LANGUAGE TemplateHaskell, TypeFamilies, TypeOperators #-} ----------------------------------------------------------------------------- -- | -- Module : Data.Units.Imperial.Survey -- Copyright : (C) 2013 Richard Eisenberg -- License : BSD-style (see LICENSE) -- Maintainer : Richard Eisenberg (rae@cs.brynmawr.edu) -- Stability : experimental -- Portability : non-portable -- -- Survey units are Gunter's units, so called because thay have been -- standardised by Edmund Gunter in 1620 at 25 links to the rod, 4 rods -- to the chain. -- -- Where possible, reference have been made to UK legislation. However, -- Wikipedia's page is /much/ better organized than any government -- resource immediately available. ----------------------------------------------------------------------------- module Data.Units.Imperial.Survey where import Data.Metrology.TH import Data.Units.Imperial.Length import Language.Haskell.TH declareDerivedUnit "Rod" [t| Chain |] 0.25 (Just "rd") declareDerivedUnit "Link" [t| Rod |] 0.04 (Just "li") -- | Survey lengths: All units above surveyLengths :: [Name] surveyLengths :: [Name] surveyLengths = [ ''Link, ''Rod ]