init
This commit is contained in:
commit
7008596f4c
58 changed files with 1197 additions and 0 deletions
1
.direnv/flake-profile
Symbolic link
1
.direnv/flake-profile
Symbolic link
|
|
@ -0,0 +1 @@
|
|||
flake-profile-2-link
|
||||
1
.direnv/flake-profile-2-link
Symbolic link
1
.direnv/flake-profile-2-link
Symbolic link
|
|
@ -0,0 +1 @@
|
|||
/nix/store/3i8xg318jhrh3x75952mrjfyqm9gbbjh-ghc-shell-for-lamb-0.1.0.0-0-env
|
||||
1
.envrc
Normal file
1
.envrc
Normal file
|
|
@ -0,0 +1 @@
|
|||
use flake
|
||||
3
cabal.project
Normal file
3
cabal.project
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
packages:
|
||||
.
|
||||
tests: True
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
{-# LANGUAGE NoRebindableSyntax #-}
|
||||
{-# OPTIONS_GHC -Wno-missing-import-lists #-}
|
||||
{-# OPTIONS_GHC -w #-}
|
||||
|
||||
{-|
|
||||
Module : PackageInfo_example
|
||||
Description : Contents of some of the package's Cabal file's fields.
|
||||
|
||||
WARNING: This module was generated by Cabal. Any modifications will be
|
||||
overwritten if the module is regenerated.
|
||||
|
||||
This module exports values that record information from some of the fields of
|
||||
the package's Cabal package description file (Cabal file).
|
||||
|
||||
For further information about the fields in a Cabal file, see the Cabal User
|
||||
Guide.
|
||||
-}
|
||||
|
||||
module PackageInfo_example (
|
||||
name,
|
||||
version,
|
||||
synopsis,
|
||||
copyright,
|
||||
homepage,
|
||||
) where
|
||||
|
||||
import Data.Version (Version(..))
|
||||
import Prelude
|
||||
|
||||
-- |The content of the @name@ field of the package's Cabal file, but with any
|
||||
-- hyphen characters replaced by underscore characters.
|
||||
name :: String
|
||||
name = "example"
|
||||
-- |The content of the @version@ field of the package's Cabal file.
|
||||
version :: Version
|
||||
version = Version [0,1,0,0] []
|
||||
|
||||
-- |The content of the @synopsis@ field of the package's Cabal file.
|
||||
synopsis :: String
|
||||
synopsis = ""
|
||||
-- |The content of the @copyright@ field of the package's Cabal file.
|
||||
copyright :: String
|
||||
copyright = ""
|
||||
-- |The content of the @homepage@ field of the package's Cabal file.
|
||||
homepage :: String
|
||||
homepage = ""
|
||||
|
|
@ -0,0 +1,132 @@
|
|||
{-# LANGUAGE CPP #-}
|
||||
{-# LANGUAGE NoRebindableSyntax #-}
|
||||
#if __GLASGOW_HASKELL__ >= 810
|
||||
{-# OPTIONS_GHC -Wno-prepositive-qualified-module #-}
|
||||
#endif
|
||||
{-# OPTIONS_GHC -Wno-missing-import-lists #-}
|
||||
{-# OPTIONS_GHC -w #-}
|
||||
|
||||
{-|
|
||||
Module : Paths_example
|
||||
Description : Data file location, and package version and installation
|
||||
directories.
|
||||
|
||||
WARNING: This module was generated by Cabal. Any modifications will be
|
||||
overwritten if the module is regenerated.
|
||||
|
||||
This module exports a function to locate data files, and values that record
|
||||
the version of the package and some directories which the package has been
|
||||
configured to be installed into.
|
||||
|
||||
For further information about Cabal's options for its configuration step, and
|
||||
their default values, see the Cabal User Guide.
|
||||
-}
|
||||
|
||||
module Paths_example (
|
||||
version,
|
||||
getBinDir, getLibDir, getDynLibDir, getDataDir, getLibexecDir,
|
||||
getDataFileName, getSysconfDir
|
||||
) where
|
||||
|
||||
|
||||
import qualified Control.Exception as Exception
|
||||
import Data.Version (Version(..))
|
||||
import System.Environment (getEnv)
|
||||
import Prelude
|
||||
|
||||
|
||||
#if defined(VERSION_base)
|
||||
|
||||
#if MIN_VERSION_base(4,0,0)
|
||||
catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a
|
||||
#else
|
||||
catchIO :: IO a -> (Exception.Exception -> IO a) -> IO a
|
||||
#endif
|
||||
|
||||
#else
|
||||
catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a
|
||||
#endif
|
||||
catchIO = Exception.catch
|
||||
|
||||
-- |The package version.
|
||||
version :: Version
|
||||
version = Version [0,1,0,0] []
|
||||
|
||||
-- |If the argument is a filename, the result is the name of a corresponding
|
||||
-- file on the system on which the program is running, if the file were listed
|
||||
-- in the @data-files@ field of the package's Cabal package description file.
|
||||
-- No check is performed that the given filename is listed in that field.
|
||||
getDataFileName :: FilePath -> IO FilePath
|
||||
getDataFileName name = do
|
||||
dir <- getDataDir
|
||||
return (dir `joinFileName` name)
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--bindir@ option (where
|
||||
-- executables that the user might invoke are installed). This can be overridden
|
||||
-- at runtime using the environment variable example_bindir.
|
||||
getBinDir :: IO FilePath
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--libdir@ option (where
|
||||
-- object libraries are installed). This can be overridden at runtime using the
|
||||
-- environment variable example_libdir.
|
||||
getLibDir :: IO FilePath
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--dynlibdir@ option
|
||||
-- (where dynamic libraries are installed). This can be overridden at runtime
|
||||
-- using the environment variable example_dynlibdir.
|
||||
getDynLibDir :: IO FilePath
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--datadir@ option (where
|
||||
-- architecture-independent data files are installed). This can be overridden at
|
||||
-- runtime using the environment variable example_datadir.
|
||||
getDataDir :: IO FilePath
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--libexedir@ option
|
||||
-- (where executables that are not expected to be invoked directly by the user
|
||||
-- are installed). This can be overridden at runtime using the environment
|
||||
-- variable example_libexedir.
|
||||
getLibexecDir :: IO FilePath
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--sysconfdir@ option
|
||||
-- (where configuration files are installed). This can be overridden at runtime
|
||||
-- using the environment variable example_sysconfdir.
|
||||
getSysconfDir :: IO FilePath
|
||||
|
||||
|
||||
|
||||
|
||||
bindir, libdir, dynlibdir, datadir, libexecdir, sysconfdir :: FilePath
|
||||
bindir = "/home/jingus/.cabal/bin"
|
||||
libdir = "/home/jingus/.cabal/lib/x86_64-linux-ghc-9.10.3-c0c3/example-0.1.0.0-inplace-example"
|
||||
dynlibdir = "/home/jingus/.cabal/lib/x86_64-linux-ghc-9.10.3-c0c3"
|
||||
datadir = "/home/jingus/.cabal/share/x86_64-linux-ghc-9.10.3-c0c3/example-0.1.0.0"
|
||||
libexecdir = "/home/jingus/.cabal/libexec/x86_64-linux-ghc-9.10.3-c0c3/example-0.1.0.0"
|
||||
sysconfdir = "/home/jingus/.cabal/etc"
|
||||
|
||||
getBinDir = catchIO (getEnv "example_bindir") (\_ -> return bindir)
|
||||
getLibDir = catchIO (getEnv "example_libdir") (\_ -> return libdir)
|
||||
getDynLibDir = catchIO (getEnv "example_dynlibdir") (\_ -> return dynlibdir)
|
||||
getDataDir = catchIO (getEnv "example_datadir") (\_ -> return datadir)
|
||||
getLibexecDir = catchIO (getEnv "example_libexecdir") (\_ -> return libexecdir)
|
||||
getSysconfDir = catchIO (getEnv "example_sysconfdir") (\_ -> return sysconfdir)
|
||||
|
||||
|
||||
|
||||
joinFileName :: String -> String -> FilePath
|
||||
joinFileName "" fname = fname
|
||||
joinFileName "." fname = fname
|
||||
joinFileName dir "" = dir
|
||||
joinFileName dir@(c:cs) fname
|
||||
| isPathSeparator (lastChar c cs) = dir ++ fname
|
||||
| otherwise = dir ++ pathSeparator : fname
|
||||
where
|
||||
-- We do not use Data.List.NonEmpty.last, as that would limit the module to
|
||||
-- base >= 4.9.0.0 (GHC >= 8.0.1).
|
||||
lastChar x [] = x
|
||||
lastChar _ (x:xs) = lastChar x xs
|
||||
|
||||
pathSeparator :: Char
|
||||
pathSeparator = '/'
|
||||
|
||||
isPathSeparator :: Char -> Bool
|
||||
isPathSeparator c = c == '/'
|
||||
|
|
@ -0,0 +1,140 @@
|
|||
/* DO NOT EDIT: This file is automatically generated by Cabal */
|
||||
|
||||
/* package example-0.1.0.0 */
|
||||
#ifndef VERSION_example
|
||||
#define VERSION_example "0.1.0.0"
|
||||
#endif /* VERSION_example */
|
||||
#ifndef MIN_VERSION_example
|
||||
#define MIN_VERSION_example(major1,major2,minor) (\
|
||||
(major1) < 0 || \
|
||||
(major1) == 0 && (major2) < 1 || \
|
||||
(major1) == 0 && (major2) == 1 && (minor) <= 0)
|
||||
#endif /* MIN_VERSION_example */
|
||||
/* package base-4.20.2.0 */
|
||||
#ifndef VERSION_base
|
||||
#define VERSION_base "4.20.2.0"
|
||||
#endif /* VERSION_base */
|
||||
#ifndef MIN_VERSION_base
|
||||
#define MIN_VERSION_base(major1,major2,minor) (\
|
||||
(major1) < 4 || \
|
||||
(major1) == 4 && (major2) < 20 || \
|
||||
(major1) == 4 && (major2) == 20 && (minor) <= 2)
|
||||
#endif /* MIN_VERSION_base */
|
||||
|
||||
/* tool cpphs-1.20.9 */
|
||||
#ifndef TOOL_VERSION_cpphs
|
||||
#define TOOL_VERSION_cpphs "1.20.9"
|
||||
#endif /* TOOL_VERSION_cpphs */
|
||||
#ifndef MIN_TOOL_VERSION_cpphs
|
||||
#define MIN_TOOL_VERSION_cpphs(major1,major2,minor) (\
|
||||
(major1) < 1 || \
|
||||
(major1) == 1 && (major2) < 20 || \
|
||||
(major1) == 1 && (major2) == 20 && (minor) <= 9)
|
||||
#endif /* MIN_TOOL_VERSION_cpphs */
|
||||
/* tool gcc-15.2.0 */
|
||||
#ifndef TOOL_VERSION_gcc
|
||||
#define TOOL_VERSION_gcc "15.2.0"
|
||||
#endif /* TOOL_VERSION_gcc */
|
||||
#ifndef MIN_TOOL_VERSION_gcc
|
||||
#define MIN_TOOL_VERSION_gcc(major1,major2,minor) (\
|
||||
(major1) < 15 || \
|
||||
(major1) == 15 && (major2) < 2 || \
|
||||
(major1) == 15 && (major2) == 2 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_gcc */
|
||||
/* tool ghc-9.10.3 */
|
||||
#ifndef TOOL_VERSION_ghc
|
||||
#define TOOL_VERSION_ghc "9.10.3"
|
||||
#endif /* TOOL_VERSION_ghc */
|
||||
#ifndef MIN_TOOL_VERSION_ghc
|
||||
#define MIN_TOOL_VERSION_ghc(major1,major2,minor) (\
|
||||
(major1) < 9 || \
|
||||
(major1) == 9 && (major2) < 10 || \
|
||||
(major1) == 9 && (major2) == 10 && (minor) <= 3)
|
||||
#endif /* MIN_TOOL_VERSION_ghc */
|
||||
/* tool ghc-pkg-9.10.3 */
|
||||
#ifndef TOOL_VERSION_ghc_pkg
|
||||
#define TOOL_VERSION_ghc_pkg "9.10.3"
|
||||
#endif /* TOOL_VERSION_ghc_pkg */
|
||||
#ifndef MIN_TOOL_VERSION_ghc_pkg
|
||||
#define MIN_TOOL_VERSION_ghc_pkg(major1,major2,minor) (\
|
||||
(major1) < 9 || \
|
||||
(major1) == 9 && (major2) < 10 || \
|
||||
(major1) == 9 && (major2) == 10 && (minor) <= 3)
|
||||
#endif /* MIN_TOOL_VERSION_ghc_pkg */
|
||||
/* tool gpp-15.2.0 */
|
||||
#ifndef TOOL_VERSION_gpp
|
||||
#define TOOL_VERSION_gpp "15.2.0"
|
||||
#endif /* TOOL_VERSION_gpp */
|
||||
#ifndef MIN_TOOL_VERSION_gpp
|
||||
#define MIN_TOOL_VERSION_gpp(major1,major2,minor) (\
|
||||
(major1) < 15 || \
|
||||
(major1) == 15 && (major2) < 2 || \
|
||||
(major1) == 15 && (major2) == 2 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_gpp */
|
||||
/* tool haddock-2.31.1 */
|
||||
#ifndef TOOL_VERSION_haddock
|
||||
#define TOOL_VERSION_haddock "2.31.1"
|
||||
#endif /* TOOL_VERSION_haddock */
|
||||
#ifndef MIN_TOOL_VERSION_haddock
|
||||
#define MIN_TOOL_VERSION_haddock(major1,major2,minor) (\
|
||||
(major1) < 2 || \
|
||||
(major1) == 2 && (major2) < 31 || \
|
||||
(major1) == 2 && (major2) == 31 && (minor) <= 1)
|
||||
#endif /* MIN_TOOL_VERSION_haddock */
|
||||
/* tool hpc-0.69 */
|
||||
#ifndef TOOL_VERSION_hpc
|
||||
#define TOOL_VERSION_hpc "0.69"
|
||||
#endif /* TOOL_VERSION_hpc */
|
||||
#ifndef MIN_TOOL_VERSION_hpc
|
||||
#define MIN_TOOL_VERSION_hpc(major1,major2,minor) (\
|
||||
(major1) < 0 || \
|
||||
(major1) == 0 && (major2) < 69 || \
|
||||
(major1) == 0 && (major2) == 69 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_hpc */
|
||||
/* tool hsc2hs-0.68.10 */
|
||||
#ifndef TOOL_VERSION_hsc2hs
|
||||
#define TOOL_VERSION_hsc2hs "0.68.10"
|
||||
#endif /* TOOL_VERSION_hsc2hs */
|
||||
#ifndef MIN_TOOL_VERSION_hsc2hs
|
||||
#define MIN_TOOL_VERSION_hsc2hs(major1,major2,minor) (\
|
||||
(major1) < 0 || \
|
||||
(major1) == 0 && (major2) < 68 || \
|
||||
(major1) == 0 && (major2) == 68 && (minor) <= 10)
|
||||
#endif /* MIN_TOOL_VERSION_hsc2hs */
|
||||
/* tool hscolour-1.25 */
|
||||
#ifndef TOOL_VERSION_hscolour
|
||||
#define TOOL_VERSION_hscolour "1.25"
|
||||
#endif /* TOOL_VERSION_hscolour */
|
||||
#ifndef MIN_TOOL_VERSION_hscolour
|
||||
#define MIN_TOOL_VERSION_hscolour(major1,major2,minor) (\
|
||||
(major1) < 1 || \
|
||||
(major1) == 1 && (major2) < 25 || \
|
||||
(major1) == 1 && (major2) == 25 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_hscolour */
|
||||
/* tool runghc-9.10.3 */
|
||||
#ifndef TOOL_VERSION_runghc
|
||||
#define TOOL_VERSION_runghc "9.10.3"
|
||||
#endif /* TOOL_VERSION_runghc */
|
||||
#ifndef MIN_TOOL_VERSION_runghc
|
||||
#define MIN_TOOL_VERSION_runghc(major1,major2,minor) (\
|
||||
(major1) < 9 || \
|
||||
(major1) == 9 && (major2) < 10 || \
|
||||
(major1) == 9 && (major2) == 10 && (minor) <= 3)
|
||||
#endif /* MIN_TOOL_VERSION_runghc */
|
||||
/* tool strip-2.46 */
|
||||
#ifndef TOOL_VERSION_strip
|
||||
#define TOOL_VERSION_strip "2.46"
|
||||
#endif /* TOOL_VERSION_strip */
|
||||
#ifndef MIN_TOOL_VERSION_strip
|
||||
#define MIN_TOOL_VERSION_strip(major1,major2,minor) (\
|
||||
(major1) < 2 || \
|
||||
(major1) == 2 && (major2) < 46 || \
|
||||
(major1) == 2 && (major2) == 46 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_strip */
|
||||
|
||||
#ifndef CURRENT_COMPONENT_ID
|
||||
#define CURRENT_COMPONENT_ID "example-0.1.0.0-inplace-example"
|
||||
#endif /* CURRENT_COMPONENT_ID */
|
||||
#ifndef CURRENT_PACKAGE_VERSION
|
||||
#define CURRENT_PACKAGE_VERSION "0.1.0.0"
|
||||
#endif /* CURRENT_PACKAGE_VERSION */
|
||||
BIN
dist-newstyle/build/x86_64-linux/ghc-9.10.3/example-0.1.0.0/x/example/cache/config
vendored
Normal file
BIN
dist-newstyle/build/x86_64-linux/ghc-9.10.3/example-0.1.0.0/x/example/cache/config
vendored
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -0,0 +1,46 @@
|
|||
{-# LANGUAGE NoRebindableSyntax #-}
|
||||
{-# OPTIONS_GHC -Wno-missing-import-lists #-}
|
||||
{-# OPTIONS_GHC -w #-}
|
||||
|
||||
{-|
|
||||
Module : PackageInfo_lamb
|
||||
Description : Contents of some of the package's Cabal file's fields.
|
||||
|
||||
WARNING: This module was generated by Cabal. Any modifications will be
|
||||
overwritten if the module is regenerated.
|
||||
|
||||
This module exports values that record information from some of the fields of
|
||||
the package's Cabal package description file (Cabal file).
|
||||
|
||||
For further information about the fields in a Cabal file, see the Cabal User
|
||||
Guide.
|
||||
-}
|
||||
|
||||
module PackageInfo_lamb (
|
||||
name,
|
||||
version,
|
||||
synopsis,
|
||||
copyright,
|
||||
homepage,
|
||||
) where
|
||||
|
||||
import Data.Version (Version(..))
|
||||
import Prelude
|
||||
|
||||
-- |The content of the @name@ field of the package's Cabal file, but with any
|
||||
-- hyphen characters replaced by underscore characters.
|
||||
name :: String
|
||||
name = "lamb"
|
||||
-- |The content of the @version@ field of the package's Cabal file.
|
||||
version :: Version
|
||||
version = Version [0,1,0,0] []
|
||||
|
||||
-- |The content of the @synopsis@ field of the package's Cabal file.
|
||||
synopsis :: String
|
||||
synopsis = ""
|
||||
-- |The content of the @copyright@ field of the package's Cabal file.
|
||||
copyright :: String
|
||||
copyright = ""
|
||||
-- |The content of the @homepage@ field of the package's Cabal file.
|
||||
homepage :: String
|
||||
homepage = ""
|
||||
|
|
@ -0,0 +1,132 @@
|
|||
{-# LANGUAGE CPP #-}
|
||||
{-# LANGUAGE NoRebindableSyntax #-}
|
||||
#if __GLASGOW_HASKELL__ >= 810
|
||||
{-# OPTIONS_GHC -Wno-prepositive-qualified-module #-}
|
||||
#endif
|
||||
{-# OPTIONS_GHC -Wno-missing-import-lists #-}
|
||||
{-# OPTIONS_GHC -w #-}
|
||||
|
||||
{-|
|
||||
Module : Paths_lamb
|
||||
Description : Data file location, and package version and installation
|
||||
directories.
|
||||
|
||||
WARNING: This module was generated by Cabal. Any modifications will be
|
||||
overwritten if the module is regenerated.
|
||||
|
||||
This module exports a function to locate data files, and values that record
|
||||
the version of the package and some directories which the package has been
|
||||
configured to be installed into.
|
||||
|
||||
For further information about Cabal's options for its configuration step, and
|
||||
their default values, see the Cabal User Guide.
|
||||
-}
|
||||
|
||||
module Paths_lamb (
|
||||
version,
|
||||
getBinDir, getLibDir, getDynLibDir, getDataDir, getLibexecDir,
|
||||
getDataFileName, getSysconfDir
|
||||
) where
|
||||
|
||||
|
||||
import qualified Control.Exception as Exception
|
||||
import Data.Version (Version(..))
|
||||
import System.Environment (getEnv)
|
||||
import Prelude
|
||||
|
||||
|
||||
#if defined(VERSION_base)
|
||||
|
||||
#if MIN_VERSION_base(4,0,0)
|
||||
catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a
|
||||
#else
|
||||
catchIO :: IO a -> (Exception.Exception -> IO a) -> IO a
|
||||
#endif
|
||||
|
||||
#else
|
||||
catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a
|
||||
#endif
|
||||
catchIO = Exception.catch
|
||||
|
||||
-- |The package version.
|
||||
version :: Version
|
||||
version = Version [0,1,0,0] []
|
||||
|
||||
-- |If the argument is a filename, the result is the name of a corresponding
|
||||
-- file on the system on which the program is running, if the file were listed
|
||||
-- in the @data-files@ field of the package's Cabal package description file.
|
||||
-- No check is performed that the given filename is listed in that field.
|
||||
getDataFileName :: FilePath -> IO FilePath
|
||||
getDataFileName name = do
|
||||
dir <- getDataDir
|
||||
return (dir `joinFileName` name)
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--bindir@ option (where
|
||||
-- executables that the user might invoke are installed). This can be overridden
|
||||
-- at runtime using the environment variable lamb_bindir.
|
||||
getBinDir :: IO FilePath
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--libdir@ option (where
|
||||
-- object libraries are installed). This can be overridden at runtime using the
|
||||
-- environment variable lamb_libdir.
|
||||
getLibDir :: IO FilePath
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--dynlibdir@ option
|
||||
-- (where dynamic libraries are installed). This can be overridden at runtime
|
||||
-- using the environment variable lamb_dynlibdir.
|
||||
getDynLibDir :: IO FilePath
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--datadir@ option (where
|
||||
-- architecture-independent data files are installed). This can be overridden at
|
||||
-- runtime using the environment variable lamb_datadir.
|
||||
getDataDir :: IO FilePath
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--libexedir@ option
|
||||
-- (where executables that are not expected to be invoked directly by the user
|
||||
-- are installed). This can be overridden at runtime using the environment
|
||||
-- variable lamb_libexedir.
|
||||
getLibexecDir :: IO FilePath
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--sysconfdir@ option
|
||||
-- (where configuration files are installed). This can be overridden at runtime
|
||||
-- using the environment variable lamb_sysconfdir.
|
||||
getSysconfDir :: IO FilePath
|
||||
|
||||
|
||||
|
||||
|
||||
bindir, libdir, dynlibdir, datadir, libexecdir, sysconfdir :: FilePath
|
||||
bindir = "/home/jingus/.cabal/bin"
|
||||
libdir = "/home/jingus/.cabal/lib/x86_64-linux-ghc-9.10.3-c0c3/lamb-0.1.0.0-inplace-lamb-tests"
|
||||
dynlibdir = "/home/jingus/.cabal/lib/x86_64-linux-ghc-9.10.3-c0c3"
|
||||
datadir = "/home/jingus/.cabal/share/x86_64-linux-ghc-9.10.3-c0c3/lamb-0.1.0.0"
|
||||
libexecdir = "/home/jingus/.cabal/libexec/x86_64-linux-ghc-9.10.3-c0c3/lamb-0.1.0.0"
|
||||
sysconfdir = "/home/jingus/.cabal/etc"
|
||||
|
||||
getBinDir = catchIO (getEnv "lamb_bindir") (\_ -> return bindir)
|
||||
getLibDir = catchIO (getEnv "lamb_libdir") (\_ -> return libdir)
|
||||
getDynLibDir = catchIO (getEnv "lamb_dynlibdir") (\_ -> return dynlibdir)
|
||||
getDataDir = catchIO (getEnv "lamb_datadir") (\_ -> return datadir)
|
||||
getLibexecDir = catchIO (getEnv "lamb_libexecdir") (\_ -> return libexecdir)
|
||||
getSysconfDir = catchIO (getEnv "lamb_sysconfdir") (\_ -> return sysconfdir)
|
||||
|
||||
|
||||
|
||||
joinFileName :: String -> String -> FilePath
|
||||
joinFileName "" fname = fname
|
||||
joinFileName "." fname = fname
|
||||
joinFileName dir "" = dir
|
||||
joinFileName dir@(c:cs) fname
|
||||
| isPathSeparator (lastChar c cs) = dir ++ fname
|
||||
| otherwise = dir ++ pathSeparator : fname
|
||||
where
|
||||
-- We do not use Data.List.NonEmpty.last, as that would limit the module to
|
||||
-- base >= 4.9.0.0 (GHC >= 8.0.1).
|
||||
lastChar x [] = x
|
||||
lastChar _ (x:xs) = lastChar x xs
|
||||
|
||||
pathSeparator :: Char
|
||||
pathSeparator = '/'
|
||||
|
||||
isPathSeparator :: Char -> Bool
|
||||
isPathSeparator c = c == '/'
|
||||
|
|
@ -0,0 +1,150 @@
|
|||
/* DO NOT EDIT: This file is automatically generated by Cabal */
|
||||
|
||||
/* package lamb-0.1.0.0 */
|
||||
#ifndef VERSION_lamb
|
||||
#define VERSION_lamb "0.1.0.0"
|
||||
#endif /* VERSION_lamb */
|
||||
#ifndef MIN_VERSION_lamb
|
||||
#define MIN_VERSION_lamb(major1,major2,minor) (\
|
||||
(major1) < 0 || \
|
||||
(major1) == 0 && (major2) < 1 || \
|
||||
(major1) == 0 && (major2) == 1 && (minor) <= 0)
|
||||
#endif /* MIN_VERSION_lamb */
|
||||
/* package base-4.20.2.0 */
|
||||
#ifndef VERSION_base
|
||||
#define VERSION_base "4.20.2.0"
|
||||
#endif /* VERSION_base */
|
||||
#ifndef MIN_VERSION_base
|
||||
#define MIN_VERSION_base(major1,major2,minor) (\
|
||||
(major1) < 4 || \
|
||||
(major1) == 4 && (major2) < 20 || \
|
||||
(major1) == 4 && (major2) == 20 && (minor) <= 2)
|
||||
#endif /* MIN_VERSION_base */
|
||||
/* package hspec-2.11.17 */
|
||||
#ifndef VERSION_hspec
|
||||
#define VERSION_hspec "2.11.17"
|
||||
#endif /* VERSION_hspec */
|
||||
#ifndef MIN_VERSION_hspec
|
||||
#define MIN_VERSION_hspec(major1,major2,minor) (\
|
||||
(major1) < 2 || \
|
||||
(major1) == 2 && (major2) < 11 || \
|
||||
(major1) == 2 && (major2) == 11 && (minor) <= 17)
|
||||
#endif /* MIN_VERSION_hspec */
|
||||
|
||||
/* tool cpphs-1.20.9 */
|
||||
#ifndef TOOL_VERSION_cpphs
|
||||
#define TOOL_VERSION_cpphs "1.20.9"
|
||||
#endif /* TOOL_VERSION_cpphs */
|
||||
#ifndef MIN_TOOL_VERSION_cpphs
|
||||
#define MIN_TOOL_VERSION_cpphs(major1,major2,minor) (\
|
||||
(major1) < 1 || \
|
||||
(major1) == 1 && (major2) < 20 || \
|
||||
(major1) == 1 && (major2) == 20 && (minor) <= 9)
|
||||
#endif /* MIN_TOOL_VERSION_cpphs */
|
||||
/* tool gcc-15.2.0 */
|
||||
#ifndef TOOL_VERSION_gcc
|
||||
#define TOOL_VERSION_gcc "15.2.0"
|
||||
#endif /* TOOL_VERSION_gcc */
|
||||
#ifndef MIN_TOOL_VERSION_gcc
|
||||
#define MIN_TOOL_VERSION_gcc(major1,major2,minor) (\
|
||||
(major1) < 15 || \
|
||||
(major1) == 15 && (major2) < 2 || \
|
||||
(major1) == 15 && (major2) == 2 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_gcc */
|
||||
/* tool ghc-9.10.3 */
|
||||
#ifndef TOOL_VERSION_ghc
|
||||
#define TOOL_VERSION_ghc "9.10.3"
|
||||
#endif /* TOOL_VERSION_ghc */
|
||||
#ifndef MIN_TOOL_VERSION_ghc
|
||||
#define MIN_TOOL_VERSION_ghc(major1,major2,minor) (\
|
||||
(major1) < 9 || \
|
||||
(major1) == 9 && (major2) < 10 || \
|
||||
(major1) == 9 && (major2) == 10 && (minor) <= 3)
|
||||
#endif /* MIN_TOOL_VERSION_ghc */
|
||||
/* tool ghc-pkg-9.10.3 */
|
||||
#ifndef TOOL_VERSION_ghc_pkg
|
||||
#define TOOL_VERSION_ghc_pkg "9.10.3"
|
||||
#endif /* TOOL_VERSION_ghc_pkg */
|
||||
#ifndef MIN_TOOL_VERSION_ghc_pkg
|
||||
#define MIN_TOOL_VERSION_ghc_pkg(major1,major2,minor) (\
|
||||
(major1) < 9 || \
|
||||
(major1) == 9 && (major2) < 10 || \
|
||||
(major1) == 9 && (major2) == 10 && (minor) <= 3)
|
||||
#endif /* MIN_TOOL_VERSION_ghc_pkg */
|
||||
/* tool gpp-15.2.0 */
|
||||
#ifndef TOOL_VERSION_gpp
|
||||
#define TOOL_VERSION_gpp "15.2.0"
|
||||
#endif /* TOOL_VERSION_gpp */
|
||||
#ifndef MIN_TOOL_VERSION_gpp
|
||||
#define MIN_TOOL_VERSION_gpp(major1,major2,minor) (\
|
||||
(major1) < 15 || \
|
||||
(major1) == 15 && (major2) < 2 || \
|
||||
(major1) == 15 && (major2) == 2 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_gpp */
|
||||
/* tool haddock-2.31.1 */
|
||||
#ifndef TOOL_VERSION_haddock
|
||||
#define TOOL_VERSION_haddock "2.31.1"
|
||||
#endif /* TOOL_VERSION_haddock */
|
||||
#ifndef MIN_TOOL_VERSION_haddock
|
||||
#define MIN_TOOL_VERSION_haddock(major1,major2,minor) (\
|
||||
(major1) < 2 || \
|
||||
(major1) == 2 && (major2) < 31 || \
|
||||
(major1) == 2 && (major2) == 31 && (minor) <= 1)
|
||||
#endif /* MIN_TOOL_VERSION_haddock */
|
||||
/* tool hpc-0.69 */
|
||||
#ifndef TOOL_VERSION_hpc
|
||||
#define TOOL_VERSION_hpc "0.69"
|
||||
#endif /* TOOL_VERSION_hpc */
|
||||
#ifndef MIN_TOOL_VERSION_hpc
|
||||
#define MIN_TOOL_VERSION_hpc(major1,major2,minor) (\
|
||||
(major1) < 0 || \
|
||||
(major1) == 0 && (major2) < 69 || \
|
||||
(major1) == 0 && (major2) == 69 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_hpc */
|
||||
/* tool hsc2hs-0.68.10 */
|
||||
#ifndef TOOL_VERSION_hsc2hs
|
||||
#define TOOL_VERSION_hsc2hs "0.68.10"
|
||||
#endif /* TOOL_VERSION_hsc2hs */
|
||||
#ifndef MIN_TOOL_VERSION_hsc2hs
|
||||
#define MIN_TOOL_VERSION_hsc2hs(major1,major2,minor) (\
|
||||
(major1) < 0 || \
|
||||
(major1) == 0 && (major2) < 68 || \
|
||||
(major1) == 0 && (major2) == 68 && (minor) <= 10)
|
||||
#endif /* MIN_TOOL_VERSION_hsc2hs */
|
||||
/* tool hscolour-1.25 */
|
||||
#ifndef TOOL_VERSION_hscolour
|
||||
#define TOOL_VERSION_hscolour "1.25"
|
||||
#endif /* TOOL_VERSION_hscolour */
|
||||
#ifndef MIN_TOOL_VERSION_hscolour
|
||||
#define MIN_TOOL_VERSION_hscolour(major1,major2,minor) (\
|
||||
(major1) < 1 || \
|
||||
(major1) == 1 && (major2) < 25 || \
|
||||
(major1) == 1 && (major2) == 25 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_hscolour */
|
||||
/* tool runghc-9.10.3 */
|
||||
#ifndef TOOL_VERSION_runghc
|
||||
#define TOOL_VERSION_runghc "9.10.3"
|
||||
#endif /* TOOL_VERSION_runghc */
|
||||
#ifndef MIN_TOOL_VERSION_runghc
|
||||
#define MIN_TOOL_VERSION_runghc(major1,major2,minor) (\
|
||||
(major1) < 9 || \
|
||||
(major1) == 9 && (major2) < 10 || \
|
||||
(major1) == 9 && (major2) == 10 && (minor) <= 3)
|
||||
#endif /* MIN_TOOL_VERSION_runghc */
|
||||
/* tool strip-2.46 */
|
||||
#ifndef TOOL_VERSION_strip
|
||||
#define TOOL_VERSION_strip "2.46"
|
||||
#endif /* TOOL_VERSION_strip */
|
||||
#ifndef MIN_TOOL_VERSION_strip
|
||||
#define MIN_TOOL_VERSION_strip(major1,major2,minor) (\
|
||||
(major1) < 2 || \
|
||||
(major1) == 2 && (major2) < 46 || \
|
||||
(major1) == 2 && (major2) == 46 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_strip */
|
||||
|
||||
#ifndef CURRENT_COMPONENT_ID
|
||||
#define CURRENT_COMPONENT_ID "lamb-0.1.0.0-inplace-lamb-tests"
|
||||
#endif /* CURRENT_COMPONENT_ID */
|
||||
#ifndef CURRENT_PACKAGE_VERSION
|
||||
#define CURRENT_PACKAGE_VERSION "0.1.0.0"
|
||||
#endif /* CURRENT_PACKAGE_VERSION */
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
dist-newstyle/build/x86_64-linux/ghc-9.10.3/lamb-0.1.0.0/t/lamb-tests/cache/build
vendored
Normal file
BIN
dist-newstyle/build/x86_64-linux/ghc-9.10.3/lamb-0.1.0.0/t/lamb-tests/cache/build
vendored
Normal file
Binary file not shown.
BIN
dist-newstyle/build/x86_64-linux/ghc-9.10.3/lamb-0.1.0.0/t/lamb-tests/cache/config
vendored
Normal file
BIN
dist-newstyle/build/x86_64-linux/ghc-9.10.3/lamb-0.1.0.0/t/lamb-tests/cache/config
vendored
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -0,0 +1,3 @@
|
|||
Test suite lamb-tests: RUNNING...
|
||||
Test suite lamb-tests: FAIL
|
||||
Test suite logged to: /home/jingus/dev/lamb/./dist-newstyle/build/x86_64-linux/ghc-9.10.3/lamb-0.1.0.0/t/lamb-tests/test/lamb-0.1.0.0-lamb-tests.log
|
||||
|
|
@ -0,0 +1 @@
|
|||
PackageLog {package = PackageIdentifier {pkgName = PackageName "lamb", pkgVersion = mkVersion [0,1,0,0]}, compiler = CompilerId GHC (mkVersion [9,10,3]), platform = Platform X86_64 Linux, testSuites = [TestSuiteLog {testSuiteName = UnqualComponentName "lamb-tests", testLogs = TestLog {testName = "lamb-tests", testOptionsReturned = [], testResult = Fail "exit code: 1"}, logFile = "/home/jingus/dev/lamb/./dist-newstyle/build/x86_64-linux/ghc-9.10.3/lamb-0.1.0.0/t/lamb-tests/test/lamb-0.1.0.0-lamb-tests.log"}]}
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
{-# LANGUAGE NoRebindableSyntax #-}
|
||||
{-# OPTIONS_GHC -Wno-missing-import-lists #-}
|
||||
{-# OPTIONS_GHC -w #-}
|
||||
|
||||
{-|
|
||||
Module : PackageInfo_lamb
|
||||
Description : Contents of some of the package's Cabal file's fields.
|
||||
|
||||
WARNING: This module was generated by Cabal. Any modifications will be
|
||||
overwritten if the module is regenerated.
|
||||
|
||||
This module exports values that record information from some of the fields of
|
||||
the package's Cabal package description file (Cabal file).
|
||||
|
||||
For further information about the fields in a Cabal file, see the Cabal User
|
||||
Guide.
|
||||
-}
|
||||
|
||||
module PackageInfo_lamb (
|
||||
name,
|
||||
version,
|
||||
synopsis,
|
||||
copyright,
|
||||
homepage,
|
||||
) where
|
||||
|
||||
import Data.Version (Version(..))
|
||||
import Prelude
|
||||
|
||||
-- |The content of the @name@ field of the package's Cabal file, but with any
|
||||
-- hyphen characters replaced by underscore characters.
|
||||
name :: String
|
||||
name = "lamb"
|
||||
-- |The content of the @version@ field of the package's Cabal file.
|
||||
version :: Version
|
||||
version = Version [0,1,0,0] []
|
||||
|
||||
-- |The content of the @synopsis@ field of the package's Cabal file.
|
||||
synopsis :: String
|
||||
synopsis = ""
|
||||
-- |The content of the @copyright@ field of the package's Cabal file.
|
||||
copyright :: String
|
||||
copyright = ""
|
||||
-- |The content of the @homepage@ field of the package's Cabal file.
|
||||
homepage :: String
|
||||
homepage = ""
|
||||
|
|
@ -0,0 +1,132 @@
|
|||
{-# LANGUAGE CPP #-}
|
||||
{-# LANGUAGE NoRebindableSyntax #-}
|
||||
#if __GLASGOW_HASKELL__ >= 810
|
||||
{-# OPTIONS_GHC -Wno-prepositive-qualified-module #-}
|
||||
#endif
|
||||
{-# OPTIONS_GHC -Wno-missing-import-lists #-}
|
||||
{-# OPTIONS_GHC -w #-}
|
||||
|
||||
{-|
|
||||
Module : Paths_lamb
|
||||
Description : Data file location, and package version and installation
|
||||
directories.
|
||||
|
||||
WARNING: This module was generated by Cabal. Any modifications will be
|
||||
overwritten if the module is regenerated.
|
||||
|
||||
This module exports a function to locate data files, and values that record
|
||||
the version of the package and some directories which the package has been
|
||||
configured to be installed into.
|
||||
|
||||
For further information about Cabal's options for its configuration step, and
|
||||
their default values, see the Cabal User Guide.
|
||||
-}
|
||||
|
||||
module Paths_lamb (
|
||||
version,
|
||||
getBinDir, getLibDir, getDynLibDir, getDataDir, getLibexecDir,
|
||||
getDataFileName, getSysconfDir
|
||||
) where
|
||||
|
||||
|
||||
import qualified Control.Exception as Exception
|
||||
import Data.Version (Version(..))
|
||||
import System.Environment (getEnv)
|
||||
import Prelude
|
||||
|
||||
|
||||
#if defined(VERSION_base)
|
||||
|
||||
#if MIN_VERSION_base(4,0,0)
|
||||
catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a
|
||||
#else
|
||||
catchIO :: IO a -> (Exception.Exception -> IO a) -> IO a
|
||||
#endif
|
||||
|
||||
#else
|
||||
catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a
|
||||
#endif
|
||||
catchIO = Exception.catch
|
||||
|
||||
-- |The package version.
|
||||
version :: Version
|
||||
version = Version [0,1,0,0] []
|
||||
|
||||
-- |If the argument is a filename, the result is the name of a corresponding
|
||||
-- file on the system on which the program is running, if the file were listed
|
||||
-- in the @data-files@ field of the package's Cabal package description file.
|
||||
-- No check is performed that the given filename is listed in that field.
|
||||
getDataFileName :: FilePath -> IO FilePath
|
||||
getDataFileName name = do
|
||||
dir <- getDataDir
|
||||
return (dir `joinFileName` name)
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--bindir@ option (where
|
||||
-- executables that the user might invoke are installed). This can be overridden
|
||||
-- at runtime using the environment variable lamb_bindir.
|
||||
getBinDir :: IO FilePath
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--libdir@ option (where
|
||||
-- object libraries are installed). This can be overridden at runtime using the
|
||||
-- environment variable lamb_libdir.
|
||||
getLibDir :: IO FilePath
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--dynlibdir@ option
|
||||
-- (where dynamic libraries are installed). This can be overridden at runtime
|
||||
-- using the environment variable lamb_dynlibdir.
|
||||
getDynLibDir :: IO FilePath
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--datadir@ option (where
|
||||
-- architecture-independent data files are installed). This can be overridden at
|
||||
-- runtime using the environment variable lamb_datadir.
|
||||
getDataDir :: IO FilePath
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--libexedir@ option
|
||||
-- (where executables that are not expected to be invoked directly by the user
|
||||
-- are installed). This can be overridden at runtime using the environment
|
||||
-- variable lamb_libexedir.
|
||||
getLibexecDir :: IO FilePath
|
||||
|
||||
-- |The location of the directory specified by Cabal's @--sysconfdir@ option
|
||||
-- (where configuration files are installed). This can be overridden at runtime
|
||||
-- using the environment variable lamb_sysconfdir.
|
||||
getSysconfDir :: IO FilePath
|
||||
|
||||
|
||||
|
||||
|
||||
bindir, libdir, dynlibdir, datadir, libexecdir, sysconfdir :: FilePath
|
||||
bindir = "/home/jingus/.cabal/bin"
|
||||
libdir = "/home/jingus/.cabal/lib/x86_64-linux-ghc-9.10.3-c0c3/lamb-0.1.0.0-inplace-lamb"
|
||||
dynlibdir = "/home/jingus/.cabal/lib/x86_64-linux-ghc-9.10.3-c0c3"
|
||||
datadir = "/home/jingus/.cabal/share/x86_64-linux-ghc-9.10.3-c0c3/lamb-0.1.0.0"
|
||||
libexecdir = "/home/jingus/.cabal/libexec/x86_64-linux-ghc-9.10.3-c0c3/lamb-0.1.0.0"
|
||||
sysconfdir = "/home/jingus/.cabal/etc"
|
||||
|
||||
getBinDir = catchIO (getEnv "lamb_bindir") (\_ -> return bindir)
|
||||
getLibDir = catchIO (getEnv "lamb_libdir") (\_ -> return libdir)
|
||||
getDynLibDir = catchIO (getEnv "lamb_dynlibdir") (\_ -> return dynlibdir)
|
||||
getDataDir = catchIO (getEnv "lamb_datadir") (\_ -> return datadir)
|
||||
getLibexecDir = catchIO (getEnv "lamb_libexecdir") (\_ -> return libexecdir)
|
||||
getSysconfDir = catchIO (getEnv "lamb_sysconfdir") (\_ -> return sysconfdir)
|
||||
|
||||
|
||||
|
||||
joinFileName :: String -> String -> FilePath
|
||||
joinFileName "" fname = fname
|
||||
joinFileName "." fname = fname
|
||||
joinFileName dir "" = dir
|
||||
joinFileName dir@(c:cs) fname
|
||||
| isPathSeparator (lastChar c cs) = dir ++ fname
|
||||
| otherwise = dir ++ pathSeparator : fname
|
||||
where
|
||||
-- We do not use Data.List.NonEmpty.last, as that would limit the module to
|
||||
-- base >= 4.9.0.0 (GHC >= 8.0.1).
|
||||
lastChar x [] = x
|
||||
lastChar _ (x:xs) = lastChar x xs
|
||||
|
||||
pathSeparator :: Char
|
||||
pathSeparator = '/'
|
||||
|
||||
isPathSeparator :: Char -> Bool
|
||||
isPathSeparator c = c == '/'
|
||||
|
|
@ -0,0 +1,140 @@
|
|||
/* DO NOT EDIT: This file is automatically generated by Cabal */
|
||||
|
||||
/* package lamb-0.1.0.0 */
|
||||
#ifndef VERSION_lamb
|
||||
#define VERSION_lamb "0.1.0.0"
|
||||
#endif /* VERSION_lamb */
|
||||
#ifndef MIN_VERSION_lamb
|
||||
#define MIN_VERSION_lamb(major1,major2,minor) (\
|
||||
(major1) < 0 || \
|
||||
(major1) == 0 && (major2) < 1 || \
|
||||
(major1) == 0 && (major2) == 1 && (minor) <= 0)
|
||||
#endif /* MIN_VERSION_lamb */
|
||||
/* package base-4.20.2.0 */
|
||||
#ifndef VERSION_base
|
||||
#define VERSION_base "4.20.2.0"
|
||||
#endif /* VERSION_base */
|
||||
#ifndef MIN_VERSION_base
|
||||
#define MIN_VERSION_base(major1,major2,minor) (\
|
||||
(major1) < 4 || \
|
||||
(major1) == 4 && (major2) < 20 || \
|
||||
(major1) == 4 && (major2) == 20 && (minor) <= 2)
|
||||
#endif /* MIN_VERSION_base */
|
||||
|
||||
/* tool cpphs-1.20.9 */
|
||||
#ifndef TOOL_VERSION_cpphs
|
||||
#define TOOL_VERSION_cpphs "1.20.9"
|
||||
#endif /* TOOL_VERSION_cpphs */
|
||||
#ifndef MIN_TOOL_VERSION_cpphs
|
||||
#define MIN_TOOL_VERSION_cpphs(major1,major2,minor) (\
|
||||
(major1) < 1 || \
|
||||
(major1) == 1 && (major2) < 20 || \
|
||||
(major1) == 1 && (major2) == 20 && (minor) <= 9)
|
||||
#endif /* MIN_TOOL_VERSION_cpphs */
|
||||
/* tool gcc-15.2.0 */
|
||||
#ifndef TOOL_VERSION_gcc
|
||||
#define TOOL_VERSION_gcc "15.2.0"
|
||||
#endif /* TOOL_VERSION_gcc */
|
||||
#ifndef MIN_TOOL_VERSION_gcc
|
||||
#define MIN_TOOL_VERSION_gcc(major1,major2,minor) (\
|
||||
(major1) < 15 || \
|
||||
(major1) == 15 && (major2) < 2 || \
|
||||
(major1) == 15 && (major2) == 2 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_gcc */
|
||||
/* tool ghc-9.10.3 */
|
||||
#ifndef TOOL_VERSION_ghc
|
||||
#define TOOL_VERSION_ghc "9.10.3"
|
||||
#endif /* TOOL_VERSION_ghc */
|
||||
#ifndef MIN_TOOL_VERSION_ghc
|
||||
#define MIN_TOOL_VERSION_ghc(major1,major2,minor) (\
|
||||
(major1) < 9 || \
|
||||
(major1) == 9 && (major2) < 10 || \
|
||||
(major1) == 9 && (major2) == 10 && (minor) <= 3)
|
||||
#endif /* MIN_TOOL_VERSION_ghc */
|
||||
/* tool ghc-pkg-9.10.3 */
|
||||
#ifndef TOOL_VERSION_ghc_pkg
|
||||
#define TOOL_VERSION_ghc_pkg "9.10.3"
|
||||
#endif /* TOOL_VERSION_ghc_pkg */
|
||||
#ifndef MIN_TOOL_VERSION_ghc_pkg
|
||||
#define MIN_TOOL_VERSION_ghc_pkg(major1,major2,minor) (\
|
||||
(major1) < 9 || \
|
||||
(major1) == 9 && (major2) < 10 || \
|
||||
(major1) == 9 && (major2) == 10 && (minor) <= 3)
|
||||
#endif /* MIN_TOOL_VERSION_ghc_pkg */
|
||||
/* tool gpp-15.2.0 */
|
||||
#ifndef TOOL_VERSION_gpp
|
||||
#define TOOL_VERSION_gpp "15.2.0"
|
||||
#endif /* TOOL_VERSION_gpp */
|
||||
#ifndef MIN_TOOL_VERSION_gpp
|
||||
#define MIN_TOOL_VERSION_gpp(major1,major2,minor) (\
|
||||
(major1) < 15 || \
|
||||
(major1) == 15 && (major2) < 2 || \
|
||||
(major1) == 15 && (major2) == 2 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_gpp */
|
||||
/* tool haddock-2.31.1 */
|
||||
#ifndef TOOL_VERSION_haddock
|
||||
#define TOOL_VERSION_haddock "2.31.1"
|
||||
#endif /* TOOL_VERSION_haddock */
|
||||
#ifndef MIN_TOOL_VERSION_haddock
|
||||
#define MIN_TOOL_VERSION_haddock(major1,major2,minor) (\
|
||||
(major1) < 2 || \
|
||||
(major1) == 2 && (major2) < 31 || \
|
||||
(major1) == 2 && (major2) == 31 && (minor) <= 1)
|
||||
#endif /* MIN_TOOL_VERSION_haddock */
|
||||
/* tool hpc-0.69 */
|
||||
#ifndef TOOL_VERSION_hpc
|
||||
#define TOOL_VERSION_hpc "0.69"
|
||||
#endif /* TOOL_VERSION_hpc */
|
||||
#ifndef MIN_TOOL_VERSION_hpc
|
||||
#define MIN_TOOL_VERSION_hpc(major1,major2,minor) (\
|
||||
(major1) < 0 || \
|
||||
(major1) == 0 && (major2) < 69 || \
|
||||
(major1) == 0 && (major2) == 69 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_hpc */
|
||||
/* tool hsc2hs-0.68.10 */
|
||||
#ifndef TOOL_VERSION_hsc2hs
|
||||
#define TOOL_VERSION_hsc2hs "0.68.10"
|
||||
#endif /* TOOL_VERSION_hsc2hs */
|
||||
#ifndef MIN_TOOL_VERSION_hsc2hs
|
||||
#define MIN_TOOL_VERSION_hsc2hs(major1,major2,minor) (\
|
||||
(major1) < 0 || \
|
||||
(major1) == 0 && (major2) < 68 || \
|
||||
(major1) == 0 && (major2) == 68 && (minor) <= 10)
|
||||
#endif /* MIN_TOOL_VERSION_hsc2hs */
|
||||
/* tool hscolour-1.25 */
|
||||
#ifndef TOOL_VERSION_hscolour
|
||||
#define TOOL_VERSION_hscolour "1.25"
|
||||
#endif /* TOOL_VERSION_hscolour */
|
||||
#ifndef MIN_TOOL_VERSION_hscolour
|
||||
#define MIN_TOOL_VERSION_hscolour(major1,major2,minor) (\
|
||||
(major1) < 1 || \
|
||||
(major1) == 1 && (major2) < 25 || \
|
||||
(major1) == 1 && (major2) == 25 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_hscolour */
|
||||
/* tool runghc-9.10.3 */
|
||||
#ifndef TOOL_VERSION_runghc
|
||||
#define TOOL_VERSION_runghc "9.10.3"
|
||||
#endif /* TOOL_VERSION_runghc */
|
||||
#ifndef MIN_TOOL_VERSION_runghc
|
||||
#define MIN_TOOL_VERSION_runghc(major1,major2,minor) (\
|
||||
(major1) < 9 || \
|
||||
(major1) == 9 && (major2) < 10 || \
|
||||
(major1) == 9 && (major2) == 10 && (minor) <= 3)
|
||||
#endif /* MIN_TOOL_VERSION_runghc */
|
||||
/* tool strip-2.46 */
|
||||
#ifndef TOOL_VERSION_strip
|
||||
#define TOOL_VERSION_strip "2.46"
|
||||
#endif /* TOOL_VERSION_strip */
|
||||
#ifndef MIN_TOOL_VERSION_strip
|
||||
#define MIN_TOOL_VERSION_strip(major1,major2,minor) (\
|
||||
(major1) < 2 || \
|
||||
(major1) == 2 && (major2) < 46 || \
|
||||
(major1) == 2 && (major2) == 46 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_strip */
|
||||
|
||||
#ifndef CURRENT_COMPONENT_ID
|
||||
#define CURRENT_COMPONENT_ID "lamb-0.1.0.0-inplace-lamb"
|
||||
#endif /* CURRENT_COMPONENT_ID */
|
||||
#ifndef CURRENT_PACKAGE_VERSION
|
||||
#define CURRENT_PACKAGE_VERSION "0.1.0.0"
|
||||
#endif /* CURRENT_PACKAGE_VERSION */
|
||||
BIN
dist-newstyle/build/x86_64-linux/ghc-9.10.3/lamb-0.1.0.0/x/lamb/cache/config
vendored
Normal file
BIN
dist-newstyle/build/x86_64-linux/ghc-9.10.3/lamb-0.1.0.0/x/lamb/cache/config
vendored
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
dist-newstyle/cache/compiler
vendored
Normal file
BIN
dist-newstyle/cache/compiler
vendored
Normal file
Binary file not shown.
BIN
dist-newstyle/cache/config
vendored
Normal file
BIN
dist-newstyle/cache/config
vendored
Normal file
Binary file not shown.
BIN
dist-newstyle/cache/elaborated-plan
vendored
Normal file
BIN
dist-newstyle/cache/elaborated-plan
vendored
Normal file
Binary file not shown.
BIN
dist-newstyle/cache/improved-plan
vendored
Normal file
BIN
dist-newstyle/cache/improved-plan
vendored
Normal file
Binary file not shown.
1
dist-newstyle/cache/plan.json
vendored
Normal file
1
dist-newstyle/cache/plan.json
vendored
Normal file
File diff suppressed because one or more lines are too long
BIN
dist-newstyle/cache/solver-plan
vendored
Normal file
BIN
dist-newstyle/cache/solver-plan
vendored
Normal file
Binary file not shown.
BIN
dist-newstyle/cache/source-hashes
vendored
Normal file
BIN
dist-newstyle/cache/source-hashes
vendored
Normal file
Binary file not shown.
BIN
dist-newstyle/cache/up-to-date
vendored
Normal file
BIN
dist-newstyle/cache/up-to-date
vendored
Normal file
Binary file not shown.
BIN
dist-newstyle/packagedb/ghc-9.10.3/package.cache
Normal file
BIN
dist-newstyle/packagedb/ghc-9.10.3/package.cache
Normal file
Binary file not shown.
0
dist-newstyle/packagedb/ghc-9.10.3/package.cache.lock
Normal file
0
dist-newstyle/packagedb/ghc-9.10.3/package.cache.lock
Normal file
77
flake.lock
generated
Normal file
77
flake.lock
generated
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
{
|
||||
"nodes": {
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1777988971,
|
||||
"narHash": "sha256-qIoWPDs+0/8JecyYgE3gpKQxW/4bLW/gp45vow9ioCQ=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "0678d8986be1661af6bb555f3489f2fdfc31f6ff",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"haskell-flake": {
|
||||
"locked": {
|
||||
"lastModified": 1777906944,
|
||||
"narHash": "sha256-RGc78WXyHT+m3yoVydNDBwaleTWKp1mctBtS8fmyOSo=",
|
||||
"owner": "srid",
|
||||
"repo": "haskell-flake",
|
||||
"rev": "b24a8a95ba7364a3aa6e53c35ad36ec33bd02fff",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "srid",
|
||||
"repo": "haskell-flake",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1778274207,
|
||||
"narHash": "sha256-I4puXmX1iovcCHZlRmztO3vW0mAbbRvq4F8wgIMQ1MM=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "b3da656039dc7a6240f27b2ef8cc6a3ef3bccae7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-lib": {
|
||||
"locked": {
|
||||
"lastModified": 1777168982,
|
||||
"narHash": "sha256-GOkGPcboWE9BmGCRMLX3worL4EMnsnG8MyKmXNeYuhQ=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"rev": "f5901329dade4a6ea039af1433fb087bd9c1fe14",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts",
|
||||
"haskell-flake": "haskell-flake",
|
||||
"nixpkgs": "nixpkgs"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
||||
58
flake.nix
Normal file
58
flake.nix
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
{
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
|
||||
flake-parts.url = "github:hercules-ci/flake-parts";
|
||||
haskell-flake.url = "github:srid/haskell-flake";
|
||||
};
|
||||
outputs = inputs@{ self, nixpkgs, flake-parts, ... }:
|
||||
flake-parts.lib.mkFlake { inherit inputs; } {
|
||||
systems = nixpkgs.lib.systems.flakeExposed;
|
||||
imports = [ inputs.haskell-flake.flakeModule ];
|
||||
|
||||
perSystem = { self', pkgs, ... }: {
|
||||
|
||||
# Typically, you just want a single project named "default". But
|
||||
# multiple projects are also possible, each using different GHC version.
|
||||
haskellProjects.default = {
|
||||
# The base package set representing a specific GHC version.
|
||||
# By default, this is pkgs.haskellPackages.
|
||||
# You may also create your own. See https://haskell.nixos.asia/package-set
|
||||
# basePackages = pkgs.haskellPackages;
|
||||
|
||||
# Extra package information. See https://haskell.nixos.asia/dependency
|
||||
#
|
||||
# Note that local packages are automatically included in `packages`
|
||||
# (defined by `defaults.packages` option).
|
||||
#
|
||||
packages = {
|
||||
# aeson.source = "1.5.0.0"; # Override aeson to a custom version from Hackage
|
||||
# shower.source = inputs.shower; # Override shower to a custom source path
|
||||
};
|
||||
settings = {
|
||||
# aeson = {
|
||||
# check = false;
|
||||
# };
|
||||
# relude = {
|
||||
# haddock = false;
|
||||
# broken = false;
|
||||
# };
|
||||
};
|
||||
|
||||
devShell = {
|
||||
# Enabled by default
|
||||
# enable = true;
|
||||
|
||||
# Programs you want to make available in the shell.
|
||||
# Default programs can be disabled by setting to 'null'
|
||||
# tools = hp: { fourmolu = hp.fourmolu; ghcid = null; };
|
||||
|
||||
# Check that haskell-language-server works
|
||||
# hlsCheck.enable = true; # Requires sandbox to be disabled
|
||||
};
|
||||
};
|
||||
|
||||
# haskell-flake doesn't set the default package, but you can do it here.
|
||||
packages.default = self'.packages.lamb;
|
||||
};
|
||||
};
|
||||
}
|
||||
31
lamb.cabal
Normal file
31
lamb.cabal
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
cabal-version: 3.0
|
||||
name: lamb
|
||||
version: 0.1.0.0
|
||||
license: NONE
|
||||
author: jingus
|
||||
maintainer: jack@jingus.dev
|
||||
build-type: Simple
|
||||
|
||||
common warnings
|
||||
ghc-options: -Wall
|
||||
|
||||
executable lamb
|
||||
import: warnings
|
||||
main-is: Main.hs
|
||||
other-modules: Parser,
|
||||
Evaluation
|
||||
build-depends: base
|
||||
hs-source-dirs: src
|
||||
default-language: Haskell2010
|
||||
|
||||
test-suite lamb-tests
|
||||
type: exitcode-stdio-1.0
|
||||
main-is: Spec.hs
|
||||
hs-source-dirs: src, test
|
||||
other-modules: Parser,
|
||||
ParserSpec,
|
||||
Evaluation,
|
||||
EvaluationSpec
|
||||
build-depends: base, hspec
|
||||
build-tool-depends: hspec-discover:hspec-discover
|
||||
default-language: Haskell2010
|
||||
6
src/Evaluation.hs
Normal file
6
src/Evaluation.hs
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
module Evaluation where
|
||||
|
||||
import Parser (Expr (Variable))
|
||||
|
||||
run :: Expr -> Expr
|
||||
run _ = Variable "a"
|
||||
19
src/Main.hs
Normal file
19
src/Main.hs
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
module Main where
|
||||
|
||||
import Evaluation (run)
|
||||
import Parser (parse)
|
||||
import System.Environment (getArgs)
|
||||
import System.IO (IOMode (ReadMode), hGetContents, openFile)
|
||||
|
||||
main :: IO ()
|
||||
main = do
|
||||
args <- getArgs
|
||||
|
||||
let command = args !! 0
|
||||
let path = args !! 1
|
||||
|
||||
case command of
|
||||
"run" -> do
|
||||
content <- openFile path ReadMode >>= hGetContents
|
||||
either putStrLn putStrLn $ show . run <$> parse content
|
||||
_ -> putStrLn $ "Unrecognized command: " ++ command
|
||||
12
src/Parser.hs
Normal file
12
src/Parser.hs
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
module Parser where
|
||||
|
||||
data Expr = Variable String | Abstraction (String, Expr) | Application (Expr, Expr)
|
||||
deriving (Eq)
|
||||
|
||||
instance Show Expr where
|
||||
show (Variable name) = name
|
||||
show (Abstraction (arg, body)) = "λ" ++ arg ++ ". " ++ show body
|
||||
show (Application (f, x)) = show f ++ " " ++ show x
|
||||
|
||||
parse :: String -> Either String Expr
|
||||
parse _ = Left "unimplemented"
|
||||
8
test/EvaluationSpec.hs
Normal file
8
test/EvaluationSpec.hs
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
module EvaluationSpec (spec) where
|
||||
import Test.Hspec
|
||||
|
||||
spec :: Spec
|
||||
spec = do
|
||||
describe "Evaluation" $ do
|
||||
it "can evaluation expressions" $
|
||||
True `shouldBe` True
|
||||
10
test/ParserSpec.hs
Normal file
10
test/ParserSpec.hs
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
module ParserSpec (spec) where
|
||||
|
||||
import Parser (Expr (Abstraction, Variable), parse)
|
||||
import Test.Hspec
|
||||
|
||||
spec :: Spec
|
||||
spec = do
|
||||
describe "Parser" $ do
|
||||
it "can parse basic expressions" $
|
||||
(parse "λx.x") `shouldBe` Right (Abstraction ("x", Variable "x"))
|
||||
1
test/Spec.hs
Normal file
1
test/Spec.hs
Normal file
|
|
@ -0,0 +1 @@
|
|||
{-# OPTIONS_GHC -F -pgmF hspec-discover #-}
|
||||
Loading…
Add table
Add a link
Reference in a new issue