linting
address puppet 3.x deprecation warnings
use builtin language function instead of an own one