Use Static Single-Assignment when possible

Use Static Single-Assignment when possible This post discuss a way of coding assignments in code where all variables are treated as constants. Introduction There are simple ways to improve our source code that are simple but effective. Static Single-Assignment (SSA) is one of them. By changing the way variable assignments are done, we can achieve some benefits in maintainability that cannot be overlooked. What is Static Single-Assignment? Just treating the variables as constants, i. [Read More]

Refactoring

Introduction Software is not a static element in a business. It evolves as business needs evolve. How can we make changes in software and keep high quality or, even better, not degrading it as we develop functionality? Refactoring Refactoring is the process of changing code structure for the better while keeping the same functionality. It should be a continuos activity made during software development, with the aim of easing maintainability of software. [Read More]

Literate programming

Donald E. Knuth coined the term Literate programming in this paper he wrote almost 40 years ago. Knuth wrote a tool called WEB as a demonstration of what Literate Programming should be. This tool would understand Pascal and TeX code, using Pascal code to create a binary executable and using TeX code to compile its documentation file. Pascal code would be a bit different because of the use of predefined macros and it would be interleaved by TeX code describing what actions execute. [Read More]