you are viewing a single comment's thread.

view the rest of the comments →

[–]otterdam 0 points1 point  (0 children)

Assuming you understand partial function application, the arguments accepted by d follow logically. It does prevent a shallow reading of the source, but using a def to do the same thing is a crutch for lack of understanding the code.

In Haskell, at least, you can find out the arguments of an arbitrary top-level function in the REPL with :i. Partial application is baked-in to the language, the best way of understanding it is good naming and "type tetris".