I suspect the author intended object "LongLines" to be used as a namespace containing a collection of function(s). For the purposes of the chapter, it is showing off functional decomposition of "processLine" within "processFile".
FindLongLines is a program used to illustrate the aforementioned concepts.
Sticking the main inside of the "LongLines" would compile, but would also "clutter" the example.
The best coding practices/conventions for Scala are common sense at this juncture. Consider your audience, your intent, and where your code base is headed. Scala's fusion of OO and functional often provides the tools to produce more than one solution.
Patterns are often a sign that your language is not powerful enough to codify a set of problems without Frameworks or Snippets. That said, here are some useful techniques identified in Scala: http://scala.sygneca.com/patterns/start