aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--flake.nix7
-rw-r--r--src/PPL/Internal.hs9
-rw-r--r--src/PPL/Sampling.hs7
3 files changed, 15 insertions, 8 deletions
diff --git a/flake.nix b/flake.nix
index 9a12c04..432d3a0 100644
--- a/flake.nix
+++ b/flake.nix
@@ -23,8 +23,13 @@
shell.tools = {
hlint = {};
ormolu = {};
+ haskell-language-server = {};
};
- shell.buildInputs = with pkgs; [
+ shell.buildInputs = [
+ (pkgs.writeScriptBin "haskell-language-server-wrapper" ''
+ #!${pkgs.stdenv.shell}
+ exec haskell-language-server "$@"
+ '')
];
};
})
diff --git a/src/PPL/Internal.hs b/src/PPL/Internal.hs
index a5b3758..7ac884b 100644
--- a/src/PPL/Internal.hs
+++ b/src/PPL/Internal.hs
@@ -1,6 +1,7 @@
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
+{-# LANGUAGE ImportQualifiedPost #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE ScopedTypeVariables #-}
@@ -27,14 +28,14 @@ import Data.Bifunctor
import Data.Bits
import Data.IORef
import Data.Monoid
-import qualified Data.Vector.Hashtables as H
-import qualified Data.Vector.Unboxed.Mutable as UM
+import Data.Vector.Hashtables qualified as H
+import Data.Vector.Unboxed.Mutable qualified as UM
import Data.Word
-import qualified Language.Haskell.TH.Syntax as TH
+import Language.Haskell.TH.Syntax qualified as TH
import Numeric.Log
import System.IO.Unsafe
import System.Random hiding (split, uniform)
-import qualified System.Random as R
+import System.Random qualified as R
type HashMap k v = H.Dictionary (H.PrimState IO) UM.MVector k UM.MVector v
diff --git a/src/PPL/Sampling.hs b/src/PPL/Sampling.hs
index 7c2cb54..d397ca8 100644
--- a/src/PPL/Sampling.hs
+++ b/src/PPL/Sampling.hs
@@ -1,5 +1,6 @@
{-# LANGUAGE BangPatterns #-}
{-# LANGUAGE BlockArguments #-}
+{-# LANGUAGE ImportQualifiedPost #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE TupleSections #-}
{-# LANGUAGE ViewPatterns #-}
@@ -12,14 +13,14 @@ where
import Control.Monad
import Control.Monad.IO.Class
import Data.IORef
-import qualified Data.Vector.Hashtables as H
-import qualified Data.Vector.Unboxed as V
+import Data.Vector.Hashtables qualified as H
+import Data.Vector.Unboxed qualified as V
import Data.Word
import Numeric.Log
import PPL.Internal
import Streaming.Prelude (Of, Stream, yield)
import System.Random (StdGen)
-import qualified System.Random as R
+import System.Random qualified as R
mh :: (MonadIO m) => StdGen -> Double -> Meas a -> Stream (Of (a, Log Double)) m ()
mh g p m = do