-
Book Overview & Buying
-
Table Of Contents
Professional Scala
By :
In this section, we'll look at the Scala features that make it easy to write small DSLs:
Flexible syntax for method invocation
By-name parameters
Extension methods and
Value classes
We'll use all of these features in the next section when we create our own DSL in Scala.
Scala has a
flexible syntax for method invocations that makes it possible to, in some
cases, omit the dot (
.) and parentheses (
()) when invoking methods.
The rules are as follows:
For methods that are of arity-
0, meaning they don't take any parameters, the parentheses can be omitted and you can use the postfix notation.
For methods with an arity of
1 or more, meaning they take one or more parameters, it's possible to write the method using infix notation.
Here's an example of using infix notation when invoking
filter:
List.range(0, 10).filter(_ > 5) List.range(0, 10) filter (_ > 5)
And here's an example of omitting the parentheses when invoking...
Change the font size
Change margin width
Change background colour