Why Dynamic Languages?
Dynamic languages have the ability to extend a program at runtime, including changing types, behaviors, and object structures. With these languages, we can do things at runtime that static languages do at compile time; we can even execute program statements that are created on the fly at runtime.
For example, if we want to compute a five percent raise on an $80,000 salary, we could simply write the following:
| 5.percentRaise(80000) |
Yes, that’s the friendly java.lang.Integer
responding to our own dynamic method, which we can add quite easily, like so:
| Integer.metaClass.percentRaise = { amount -> amount * (1 + delegate / 100.0) } |
As we see here, it’s easy to add dynamic methods to classes in Groovy. The dynamic method ...
Get Programming Groovy 2 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.