Task

Create a directory and any missing parents.

This task is named after the posix mkdir -p command, and several libraries which implement the same behavior.

Please implement a function of a single path string (for example ./path/to/dir) which has the above side-effect.
If the directory already exists, return successfully.
Ideally implementations will work equally well cross-platform (on windows, linux, and OS X).

It's likely that your language implements such a function as part of its standard library. If so, please also show how such a function would be implemented.




#ifdef __FB_WIN32__
    Dim pathname As String = "Ring\docs"
#else
    Dim pathname As String = "Ring/docs"
#endif
 
Dim As String mkpathname = "mkdir " & pathname
Dim result As Long = Shell (mkpathname)
 
If result = 0 Then
    Print "Created the directory..."
    Chdir(pathname)
    Print Curdir
Else
    Print "error: unable to create folder " & pathname & " in the current path."
End If
Sleep