Sorry, but this didn't work for me. First, $ cabal -z install --lib string-conversions cabal: unrecognized 'install' option `-z' however, without -z it does run and performs an install as you indicate . . . but then the rest doesn't work, i.e., $ cabal repl -z
:set -package string-conversions <no location info>: error: Could not load module ‘Data.String.Conversions’ It is a member of the hidden package ‘string-conversions-0.4.0.1’. Perhaps you need to add ‘string-conversions’ to the build-depends in your .cabal file.
However, this did work $ stack install string-conversions tf8-string > using precompiled package string-conversions> configure string-conversions> Configuring string-conversions-0.4.0.1... string-conversions> build string-conversions> Preprocessing library for string-conversions-0.4.0.1.. string-conversions> Building library for string-conversions-0.4.0.1.. string-conversions> [1 of 2] Compiling Data.String.Conversions ... then $ stack ghci --package string-conversions ... Prelude> import Data.String.Conversions as CS Prelude CS> :t cs cs :: ConvertibleStrings a b => a -> b *But*, now I am able to follow your cabal way and it does work. So this is very confusing for a beginner. But happy ending this time. Any lessons I can learn from this? For example, why was this so difficult? On Tue, Jun 29, 2021 at 6:44 PM Viktor Dukhovni <ietf-dane@dukhovni.org> wrote:
On Tue, Jun 29, 2021 at 05:39:42PM -0500, Galaxy Being wrote:
My problem is I can import and expose Data.Time, but Data.String.Conversions will not import to my global REPL. Any tips on doing this project-based would be enlightening too.
One thing that works is:
$ cabal -z install --lib string-conversions Resolving dependencies... ... In order, the following will be built (use -v for more details): - utf8-string-1.0.2 (lib) (requires build) - string-conversions-0.4.0.1 (lib) (requires download & build) Completed utf8-string-1.0.2 (lib) ... Completed string-conversions-0.4.0.1 (lib)
$ cabal repl -z λ> :set -package string-conversions package flags have changed, resetting and loading new packages... λ> import Data.String.Conversions as CS λ> :t cs cs :: ConvertibleStrings a b => a -> b λ>
There are surely other ways, that you might prefer, but this should get you started.
-- Viktor. _______________________________________________ Haskell-Cafe mailing list To (un)subscribe, modify options or view archives go to: http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe Only members subscribed via the mailman list are allowed to post.
-- ⨽ Lawrence Bottorff Grand Marais, MN, USA borgauf@gmail.com