[ bsd3, library, system ] [ Propose Tags ]

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.