abs package:Cabal-syntax

Absolute value.
When typechecking, we don't demand that a freshly instantiated IndefFullUnitId be compiled; instead, we just depend on the installed indefinite unit installed at the ComponentId.
Since Void values logically don't exist, this witnesses the logical reasoning tool of "ex falso quodlibet".
>>> let x :: Either Void Int; x = Right 5

>>> :{
case x of
Right r -> r
Left l  -> absurd l
:}
5
Absolute path to the current working directory.
Abstyles, Abstyles License
isAbsoluteOnAnyPlatform and isRelativeOnAnyPlatform are like isAbsolute and isRelative but have platform independent heuristics. The System.FilePath exists in two versions, Windows and Posix. The two versions don't agree on what is a relative path and we don't know if we're given Windows or Posix paths. This results in false positives when running on Posix and inspecting Windows paths, like the hackage server does. System.FilePath.Posix.isAbsolute "C:\hello" == False System.FilePath.Windows.isAbsolute "/hello" == False This means that we would treat paths that start with "/" to be absolute. On Posix they are indeed absolute, while on Windows they are not. The portable versions should be used when we might deal with paths that are from another OS than the host OS. For example, the Hackage Server deals with both Windows and Posix paths while performing the PackageDescription checks. In contrast, when we run 'cabal configure' we do expect the paths to be correct for our OS and we should not have to use the platform independent heuristics.
Is this symbolic path allowed to be absolute, or must it be relative?
The path may be absolute, or it may be relative.
Allow the use of type abstraction syntax.