github.com/fxnn/gopath (go): Package gopath implements an alternative API to Go's path processing libraries. It implements the recommondations from the article https://blog.golang.org/errors-are-values. For even more information, also have a look at the article http://blog.golang.org/error-handling-and-go.  What's special to gopath is its ability to write code that processes paths in a fluent way, while doing the error handling later. This is possible by using the immutable object gopath.GoPath, which either represents a path, or an error.  All operations on an errorneous GoPath are no-ops, therefore the first error ever occured in a chain of operations will remain visible. This way, you can work with GoPaths like you would with any other object.
Keywords: filesystem|golang|golang-library|gopath