Linus' idea of "good taste" code

Mark via Digitalmars-d digitalmars-d at puremagic.com
Wed Oct 26 06:45:14 PDT 2016


On Tuesday, 25 October 2016 at 22:53:54 UTC, Walter Bright wrote:
> It's a small bit, but the idea here is to eliminate if 
> conditionals where possible:
>
> https://medium.com/@bartobri/applying-the-linus-tarvolds-good-taste-coding-requirement-99749f37684a#.nhth1eo4e
>
> This is something we could all do better at. Making code a 
> straight path makes it easier to reason about and test.
>
> Eliminating loops is something D adds, and goes even further to 
> making code a straight line.
>
> One thing I've been trying to do lately when working with DMD 
> is to separate code that gathers information from code that 
> performs an action. (The former can then be made pure.) My code 
> traditionally has it all interleaved together.

Personally, a large amount of control flow statements (and 
especially nested control flow) makes it difficult for me to 
understand what the code does (not to mention debugging it). 
Unfortunately, it can be difficult to eliminate (or hide) control 
flow without creating needless complexity in other parts of the 
program. For instance, Linus' "good taste" example uses pointers 
explicitly and I would argue that this too is "distasteful".

On Tuesday, 25 October 2016 at 22:53:54 UTC, Walter Bright wrote:
> One thing I've been trying to do lately when working with DMD 
> is to separate code that gathers information from code that 
> performs an action. (The former can then be made pure.) My code 
> traditionally has it all interleaved together.

An obvious example of code that gathers information separated 
from code that performs an action is exceptions. :)


More information about the Digitalmars-d mailing list