CurryInfo: currypath-3.0.0 / System.CurryPath.splitProgramName

definition:
 
splitProgramName :: String -> (FilePath, ModuleIdent)
splitProgramName s
  | null ps
  = (".", "")
  | null (tail ps)
  = (".", head ps)
  | otherwise
  = (concat (init ps), last ps)
 where
  ps = splitPath (stripCurrySuffix s)
demand:
 no demanded arguments
deterministic:
 deterministic operation
documentation:
 
Splits a program name, i.e., a module name possibly prefixed by
a directory, into the directory and the module name.
A possible suffix like `.curry` or `.lcurry` is dropped from the
module name.
For instance `splitProgramName "lib/Data.Set.curry"` evaluates
to `("lib","Data.Set")`.
failfree:
 _
indeterministic:
 referentially transparent operation
infix:
 no fixity defined
iotype:
 {(_) |-> {(,)}}
name:
 splitProgramName
precedence:
 no precedence defined
result-values:
 {(,)}
signature:
 String -> (String, String)
solution-complete:
 operation might suspend on free variables
terminating:
 possibly non-terminating
totally-defined:
 possibly non-reducible on same data term