119179ad2e
I removed the `Rational` and `Fractional` instances and changed the `Num` instances The `Num` instances did not obey the semiring laws, which was the primary instigator for this change. However, there is also one very practical reason for this change, too, which is that the weaker `Monoid` constraint plays very nicely with `Text` (which is a `Monoid`, but not a `Num`). This means that now you can do cool things like this for `Shell`: >>> let x = "1" <|> "2" >>> let y = "3" <|> "y" >>> view (x * ", " * y) "1, 3" "1, 4" "2, 3" "2, 4" Also, you can now use algebraic operations for `Pattern`s when matching `Text`, for the same reason.
84 lines
2.7 KiB
Text
84 lines
2.7 KiB
Text
Name: turtle
|
|
Version: 1.1.0
|
|
Cabal-Version: >=1.10
|
|
Build-Type: Simple
|
|
License: BSD3
|
|
License-File: LICENSE
|
|
Copyright: 2015 Gabriel Gonzalez
|
|
Author: Gabriel Gonzalez
|
|
Maintainer: Gabriel439@gmail.com
|
|
Bug-Reports: https://github.com/Gabriel439/Haskell-Turtle-Library/issues
|
|
Synopsis: Shell programming, Haskell-style
|
|
Description: @turtle@ is a reimplementation of the Unix command line environment
|
|
in Haskell so that you can use Haskell as both a shell and a scripting
|
|
language.
|
|
.
|
|
Features include:
|
|
.
|
|
* Batteries included: Command an extended suite of predefined utilities
|
|
.
|
|
* Interoperability: You can still run external shell commands
|
|
.
|
|
* Portability: Works on Windows, OS X, and Linux
|
|
.
|
|
* Exception safety: Safely acquire and release resources
|
|
.
|
|
* Streaming: Transform or fold command output in constant space
|
|
.
|
|
* Patterns: Use typed regular expressions that can parse structured values
|
|
.
|
|
* Formatting: Type-safe @printf@-style text formatting
|
|
.
|
|
* Modern: Supports @text@ and @system-filepath@
|
|
.
|
|
Read "Turtle.Tutorial" for a detailed tutorial or "Turtle.Prelude" for a
|
|
quick-start guide
|
|
.
|
|
@turtle@ is designed to be beginner-friendly, but as a result lacks certain
|
|
features, like tracing commands. If you feel comfortable using @turtle@
|
|
then you should also check out the @Shelly@ library which provides similar
|
|
functionality.
|
|
Category: System
|
|
Source-Repository head
|
|
Type: git
|
|
Location: https://github.com/Gabriel439/Haskell-Turtle-Library
|
|
|
|
Library
|
|
HS-Source-Dirs: src
|
|
Build-Depends:
|
|
base >= 4.5 && < 5 ,
|
|
async >= 2.0.0.0 && < 2.1,
|
|
clock >= 0.4.1.2 && < 0.5,
|
|
directory < 1.3,
|
|
foldl < 1.1,
|
|
managed < 1.1,
|
|
process >= 1.0.1.1 && < 1.3,
|
|
system-filepath >= 0.3.1 && < 0.5,
|
|
system-fileio >= 0.2.1 && < 0.4,
|
|
temporary < 1.3,
|
|
text < 1.3,
|
|
time < 1.6,
|
|
transformers >= 0.2.0.0 && < 0.5
|
|
if os(windows)
|
|
Build-Depends: Win32 >= 2.2.0.1 && < 2.4
|
|
else
|
|
Build-Depends: unix >= 2.5.1.0 && < 2.8
|
|
Exposed-Modules:
|
|
Turtle,
|
|
Turtle.Format,
|
|
Turtle.Pattern,
|
|
Turtle.Shell,
|
|
Turtle.Prelude,
|
|
Turtle.Tutorial
|
|
GHC-Options: -O2 -Wall
|
|
Default-Language: Haskell2010
|
|
|
|
test-suite tests
|
|
Type: exitcode-stdio-1.0
|
|
HS-Source-Dirs: test
|
|
Main-Is: Main.hs
|
|
GHC-Options: -O2 -Wall
|
|
Default-Language: Haskell2010
|
|
Build-Depends:
|
|
base >= 4 && < 5 ,
|
|
doctest >= 0.9.12 && < 0.10
|