Welcome to Software Codex
Welcome to Software Codex!!! Here you can find posts focused on software engineering ranging from technology specific topics like .net, WPF to development practices, functional programming, scripting...
View ArticleForays into functional C# – Closures in C#
Closures in C# have been around for a while starting with the introduction of anonymous methods in .net 2.0. But with the introduction of lambdas ( essentially a simpler way of creating anonymous...
View ArticleForays into functional C# – Shared environment with closures
One of the interesting features when dealing with closures is the ability to deal with multiple functions closed over the same environment. This feature opens up interesting possibilities (and...
View ArticlePowerShell Tips and Tricks – Get module API information
The following command can be used to get information about the functions that a module provides. For instance, the following command selects the command type, name and the visibility of the functions...
View ArticleWindows PowerShell – How to validate input parameters
Validating input parameters will probably be one of the widely used features when creating functions in PowerShell. Let us take the following trivial example of finding a target file or directory in...
View ArticleNameof() and Infoof() using Expression Trees
A lot of times, we would like to get information about properties and fields in a class. This has lot of applications, in particular, provides a way to get rid of the magic strings spread throughout...
View ArticleTips &Tricks – Simplifying enum management
Enumerations, one of the widely used primitives, lends itself very well to modeling a set of options, rules, etc. We often find ourselves coming across common use cases like getting a list of valid...
View ArticleApplied Functional Programming in C# – Maybe Monad
Monads are getting a lot of attention with the proliferation of functional languages as well as in general purpose languages like C# ( LINQ is a good example). There are very good articles and videos...
View Article