I've been working on open source projects for a while, namely Parrot and Perl 6. Recently I've also been hacking on TNValidate
, a fluent validation library for .Net. To quote a little code from its synopsis:
// Instantiate validator.
var Validate = new Validator(ValidationLanguageEnum.English);
// Chain rules; automated error generation.
// Supply a custom error message.
"You must be older than 13 to sign up");
// Check if validation suceeded.
// Here you can data-bind the errors, e.g. to a Repeater
// in ASP.NET.
ErrorList.DataSource = Validate.ValidatorResults;
// Was fine, continue...