haskell-turtle-library/turtle.cabal
Gabriel Gonzalez 119179ad2e Fixed numeric instances for Pattern and Shell
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.
2015-04-04 17:03:30 -07:00

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