From 03b840cb5fb8ff5217fefc9e1240a3131db309fc Mon Sep 17 00:00:00 2001 From: eric thul Date: Tue, 11 Aug 2015 20:57:07 -0400 Subject: PureScript 0.7 updates and migration to pulp --- src/PursLoader/Loader.purs | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) (limited to 'src/PursLoader/Loader.purs') diff --git a/src/PursLoader/Loader.purs b/src/PursLoader/Loader.purs index e9e03c4..5373d2f 100644 --- a/src/PursLoader/Loader.purs +++ b/src/PursLoader/Loader.purs @@ -4,6 +4,8 @@ module PursLoader.Loader , loaderFn ) where +import Prelude (Unit(), ($), (<>), (>>=), (<$>), (++), bind, flip, id, pure, return, unit) + import Control.Monad.Aff (Aff(), runAff) import Control.Monad.Eff (Eff()) import Control.Monad.Eff.Class (liftEff) @@ -36,18 +38,11 @@ psciFilename = ".psci" (!!!) = flip (!!) -foreign import cwd "var cwd = process.cwd();" :: String +foreign import cwd :: String -foreign import relative """ -function relative(from) { - return function(to){ - var path = require('path'); - return path.relative(from, to); - }; -} -""" :: String -> String -> String +foreign import relative :: String -> String -> String -mkPsci :: [[String]] -> [[String]] -> String +mkPsci :: Array (Array String) -> Array (Array String) -> String mkPsci srcs ffis = joinWith "\n" ((loadModule <$> concat srcs) <> (loadForeign <$> concat ffis)) where loadModule :: String -> String @@ -56,7 +51,7 @@ mkPsci srcs ffis = joinWith "\n" ((loadModule <$> concat srcs) <> (loadForeign < loadForeign :: String -> String loadForeign a = ":f " ++ relative cwd a -findFFI :: forall eff. [[String]] -> String -> Aff (fs :: FS | eff) (Maybe String) +findFFI :: forall eff. Array (Array String) -> String -> Aff (fs :: FS | eff) (Maybe String) findFFI ffiss name = findFileUtf8 re (concat ffiss) where re = regex ("(?:^|\\n)//\\s*module\\s*" ++ name ++ "\\s*\\n") noFlags @@ -79,7 +74,7 @@ loader' ref source = do writeFileUtf8 psciFilename psciFile - let moduleName = match moduleRegex source >>= (!!!) 1 + let moduleName = match moduleRegex source >>= (!!!) 1 >>= id hasForeign = test foreignRegex source result = (\a -> "module.exports = require('" ++ a ++ "');") <$> moduleName -- cgit v1.2.3