simplify dumping procedure
modernize the code for the ES6/ES5 era
support named and positional function parameters