idris-0.1.7: lib/system.idr
-- System/OS interaction functions
namespace System {
numArgs = mkForeign (FFun "epic_numArgs" [] FInt); [%eval]
getArgn = mkForeign (FFun "epic_getArg" [FInt] FStr); [%eval]
getArgs' : List String -> Int -> IO (List String);
getArgs' acc 0 = return acc;
getArgs' acc n = do { arg <- getArgn (n-1);
getArgs' (Cons arg acc) (n-1);
};
getArgs : IO (List String);
getArgs = do { num <- numArgs;
getArgs' [] num; };
}