Exercises in Programming Style–Declared Intentions

NOTE : read the rest of the series, or check out the source code.

If you enjoy read­ing these exer­cises then please buy Crista’s book to sup­port her work.

exercises-prog-styles-cover

Fol­low­ing on from the last post, we will look at the Declared Intentions style today.

 

Style 23 – Declared Intentions

Constraints

  • Existence of a run-time typechecker.
  • Procedures and functions declare what types of arguments they expect.
  • If callers send arguments of types that aren’t expected, the procedures/functions are not executed.

 

The problem of type checking is a solved problem in statically typed languages, so by programming in F# there’s almost nothing we need to really do for this style.

Using the same solution from the Pipeline (aka functional) style, I have added a few explicit type declarations to better comply with the constraints.

Style23_01

 

You can find the source code for this exercise here.


Yan Cui

I’m an AWS Serverless Hero and the author of Production-Ready Serverless. I have run production workload at scale in AWS for nearly 10 years and I have been an architect or principal engineer with a variety of industries ranging from banking, e-commerce, sports streaming to mobile gaming. I currently work as an independent consultant focused on AWS and serverless.

You can contact me via Email, Twitter and LinkedIn.

Hire me.