HORIZON HASKELLDocslts/ghc-9.10.x248f8f02026-10-05Search names, modules, packages, or :: a typeCtrl K

GHC 9.10.3 · lts/ghc-9.10.x · 248f8f0 · 2026-10-05

Package1.5.4.0System

filepath

Library for manipulating FilePaths in a cross platform way.

Modules

11 modules
Internal modules · 3

Description

This package provides functionality for manipulating FilePath values, and is shipped with GHC. It provides two variants for filepaths:

legacy filepaths: type FilePath = String operating system abstracted filepaths (OsPath): internally unpinned ShortByteString (platform-dependent encoding)

It is recommended to use OsPath when possible, because it is more correct.

For each variant there are three main modules:

System.FilePath.Posix / System.OsPath.Posix manipulates POSIX/Linux style FilePath values (with / as the path separator). System.FilePath.Windows / System.OsPath.Windows manipulates Windows style FilePath values (with either \ or / as the path separator, and deals with drives). System.FilePath / System.OsPath for dealing with current platform-specific filepaths

For more powerful string manipulation of OsPath, you can use the os-string package (OsPath is a type synonym for OsString).

An introduction into the new API can be found in this blog post. Code examples for the new API can be found here.

Depends on

6 packages

Used by in this set · 109