In today's business climate, reusable code is essential. But many programmers often don't use existing utility functions because they find them difficult to use or not general enough. Also, they may not know that such functions exist. Instead, programmers often clone lines of code from other functions. This results in sloppy, undocumented code which is full of errors. In order to avoid this, the author of a utility function must make an extra effort to ensure that his function is designed properly.APL is easy to learn because its primitives behave consistently, work on arrays as well as scalars, can handle edge conditions, often use default values and are totally encapsulated from the user. We can learn from this by designing utility functions in the same way, allowing them to become an extension of APL and its set of primitives. This paper will show some examples and design techniques.
/lp/association-for-computing-machinery/how-to-write-an-apl-utility-function-h92vmTbPV4