View Problem
Process each file in a directory recursively
fsharp
let processDirectory dirname proc =
let rec processDirectory' dirname' =
Directory.GetFiles(dirname') |> Array.iter proc
Directory.GetDirectories(dirname') |> Array.iter processDirectory'
processDirectory' dirname
// ------
let dirname = "c:\\"
processDirectory dirname (fun filename -> printfn "%s" filename)
let rec processDirectory' dirname' =
Directory.GetFiles(dirname') |> Array.iter proc
Directory.GetDirectories(dirname') |> Array.iter processDirectory'
processDirectory' dirname
// ------
let dirname = "c:\\"
processDirectory dirname (fun filename -> printfn "%s" filename)
cpp C++/CLI .NET 2.0
void processFile(String^ filename) { Console::WriteLine("{0}", filename); }
void processDirectory(String^ dirname)
{
for each(String^ filename in IO::Directory::GetFiles(dirname)) processFile(filename);
for each(String^ subdirname in IO::Directory::GetDirectories(dirname)) processDirectory(subdirname);
}
int main()
{
processDirectory("c:\\");
}
void processDirectory(String^ dirname)
{
for each(String^ filename in IO::Directory::GetFiles(dirname)) processFile(filename);
for each(String^ subdirname in IO::Directory::GetDirectories(dirname)) processDirectory(subdirname);
}
int main()
{
processDirectory("c:\\");
}
Submit a new solution for python, clojure, fsharp, erlang ...
There are 10 other solutions in additional languages (fantom, groovy, haskell, java ...)




