Scala: curried constructors
I have the following Scala class: class Person(var name : String, var age : Int, var email : String) I would like to use the Person constructor as a curried function: def mkPerson = (n : String) => (a : Int) => (e : String) => new Person(n,a,e) This works, but is there another way to accomplish this? This approach seems a bit tedious and error-prone. I could imagine something like Function.curried, but then for constructors. This will work: def mkPerson = (new Person(_, _, _)).curried A bit late to this party, but if you make Person a case class: scala> case class Person(name: String, age: Int