HORIZON HASKELLDocslts/ghc-9.10.x248f8f02026-10-05Search names, modules, packages, or :: a typeCtrl K

GHC 9.10.3 · lts/ghc-9.10.x · 248f8f0 · 2026-10-05

Moduleextra-1.8Haskell2010

System.Info.Extra

Extra functions for the current system info.

  • 7 values
  • Packageextra-1.8
  • Exports7
  • LanguageHaskell2010
  • LicenceBSD-3-Clause
  • SourceExtra.hs
valuearch :: String
#

The machine architecture on which the program is running. Common values include:

  • "aarch64"

  • "alpha"

  • "arm"

  • "hppa"

  • "hppa1_1"

  • "i386"

  • "ia64"

  • "m68k"

  • "mips"

  • "mipseb"

  • "mipsel"

  • "nios2"

  • "powerpc"

  • "powerpc64"

  • "powerpc64le"

  • "riscv32"

  • "riscv64"

  • "loongarch32"

  • "loongarch64"

  • "rs6000"

  • "s390"

  • "s390x"

  • "sh4"

  • "sparc"

  • "sparc64"

  • "vax"

  • "x86_64"

valuecompilerName :: String
#

The Haskell implementation with which the program was compiled or is being interpreted. On the GHC platform, the value is "ghc".

The version of compilerName with which the program was compiled or is being interpreted.

Example
ghci> compilerVersion
Version {versionBranch = [8,8], versionTags = []}
valueos :: String
#

The operating system on which the program is running. Common values include:

  • "darwin" — macOS

  • "freebsd"

  • "linux"

  • "linux-android"

  • "mingw32" — Windows

  • "netbsd"

  • "openbsd"

valueisWindows :: Bool
#

Return True on Windows and False otherwise. A runtime version of #ifdef minw32_HOST_OS. Equivalent to os == "mingw32", but: more efficient; doesn't require typing an easily mistypeable string; actually asks about your OS not a library; doesn't bake in 32bit assumptions that are already false. </rant>

isWindows == (os == "mingw32")