
Don't Use Booleans - fanf2
https://www.luu.io/posts/dont-use-booleans/
======
ktpsns
That clearly depends on the expressivity of your programming language.

Python is an example where named arguments preserve context, readability and
simplicity (especially for people not aware with language features, bitmasks,
etc):

    
    
       fetch(
         accountId,
         includeDisabled=true,
         fetch_history=true,
         fetch_details=true
       );
    

Similar languages (Perl for instance) recommend passing dictionaries (hash
maps), which roughly reads the same way. Typically, these ways are easily
extendable without breaking the API.

