diff --git a/horizon.dhall b/horizon.dhall
index 8314c883b1d7b57637b1c64fd080d56dffe0107b..37d654246913efd11a257a89493d43934c793fbc 100644
--- a/horizon.dhall
+++ b/horizon.dhall
@@ -786,6 +786,7 @@ let packages =
       , non-negative = H.callHackage "non-negative" "0.1.2"
       , nothunks = H.callHackage "nothunks" "0.1.3"
       , numeric-extras = H.callHackage "numeric-extras" "0.1"
+      , numeric-prelude = H.callHackage "numeric-prelude" "0.4.4"
       , numtype-dk = H.callHackage "numtype-dk" "0.5.0.3"
       , odd-jobs =
           H.callGit
diff --git a/initial-packages.nix b/initial-packages.nix
index 372287690f4d4c3d7c41c5894c6e542d2a617a7a..432a69f56de424df5ece1ccb8fa8937dfe26fe89 100644
--- a/initial-packages.nix
+++ b/initial-packages.nix
@@ -1259,6 +1259,8 @@ self: with pkgs.haskell.lib; {
 
   numeric-extras = self.callPackage (./pkgs/numeric-extras.nix) { };
 
+  numeric-prelude = self.callPackage (./pkgs/numeric-prelude.nix) { };
+
   numtype-dk = self.callPackage (./pkgs/numtype-dk.nix) { };
 
   odd-jobs = self.callPackage (./pkgs/odd-jobs.nix) { };
diff --git a/pkgs/numeric-prelude.nix b/pkgs/numeric-prelude.nix
new file mode 100644
index 0000000000000000000000000000000000000000..66aa20d4035bfe31fbcf74d05b2b7679b77a3ba0
--- /dev/null
+++ b/pkgs/numeric-prelude.nix
@@ -0,0 +1,56 @@
+{ mkDerivation
+, QuickCheck
+, array
+, base
+, containers
+, deepseq
+, doctest-exitcode-stdio
+, doctest-lib
+, lib
+, non-negative
+, parsec
+, random
+, semigroups
+, storable-record
+, utility-ht
+}:
+mkDerivation {
+  pname = "numeric-prelude";
+  version = "0.4.4";
+  sha256 = "5a32f6b4dab913c68db30acc2e70e41e4b8f9fb00d25407ed4b0e4ae85cfa613";
+  isLibrary = true;
+  isExecutable = true;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [
+    array
+    base
+    containers
+    deepseq
+    non-negative
+    parsec
+    QuickCheck
+    random
+    semigroups
+    storable-record
+    utility-ht
+  ];
+  testHaskellDepends = [
+    base
+    doctest-exitcode-stdio
+    doctest-lib
+    QuickCheck
+    random
+    utility-ht
+  ];
+  enableLibraryProfiling = true;
+  enableExecutableProfiling = true;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  homepage = "http://www.haskell.org/haskellwiki/Numeric_Prelude";
+  description = "An experimental alternative hierarchy of numeric type classes";
+  license = lib.licenses.bsd3;
+  broken = false;
+}