Workspace Functional Programming Principles in Scala