Subscribe: Smart Software
Preview: Smart Software


.NET and C# internals

Last Build Date: 2015-01-14T20:17:45Z




I started working on NStatic a little under a decade ago. It went through several iterations of development with major design changes that broke a lot of functionality in order to achieve the product I dreamed of. For instance, one goal was to be able to prove the correctness of

Plans for Year 2015


My company is SoftPerson, which specializes in “semantic computing” in everyday general-purpose applications. The past decade or so was one of a lot of reading, research and experimentation with entirely new technologies and user experiences, but no product. I can’t really continue for more than another year without revenues, so

C# for Systems Programming


By way of the article “A glimpse into a new general purpose programming language under development at Microsoft” from the Lambda the Ultimate weblog, I came across Joe Duffy’s new post on C# for Systems Programming. Microsoft may be developing a native version of C# with additional extensions for systems

Mads on the Future of C# (6.0)


Mads Torgersen, head program manager of C#, presented the “Future of C#” at the NDC London conference on Friday morning 12/6. Most of the “probable” new features announced moved C# to a more succinct, functional programming style. Import type members into namespace. Succinct syntax for primary constructors. Readonly properties Property

Immutable & Isolated Types Likely in Future C#


Based on several pieces of evidence, immutable and isolated type designators are likely in a future version of C# and the common language runtime (CLR). These features will likely debut on .NET 5.0 in the next major iteration of Visual Studio, Visual Studio 2014. Immutable types in imperative language, US

“In” Parameters Proposal for C# 6.0


I propose a new feature that will make manipulation of value types more efficient, produce more readable code, and encourage greater use of the functional programming style. I disclaim any ownership to this idea. Currently, there are two C# keywords that allow parameters to be passed by reference, “ref” and

Anders On C# 6.0 at BUILD 2013


Anders Hejlsberg and Charles Torre talked about a future version of C#, version 6.0, at Windows Build 2013. (34:30) Visual Studio 2013 is the minor release version in an annual major/minor release cycle. The version of .NET included in VS  2013 is 4.5.1 which is an in-place upgrade of

Looking Forward


I have been thinking a lot about the purpose of my blogging and the creation of workflow that will allow me to blog more. There are a few things that I am interested in: C# Development C# Development: .NET and Mono(MonoTouch, MonoDroid, and MonoMac) Open Source Libraries Computer Science Theory

Immutable Collections Critique


Microsoft released a preliminary version of immutable collections with mutable performance. It uses many of the same performance tricks that I used to build functional collections such as supporting freezable binary tree data structures. The algorithm used is similar to AVL trees in that it minimizes the difference in heights

Mainstreaming of Functional Programming


I started out on my projects using imperative techniques, but have since rewritten all my code to based on the functional paradigm. It was the only way that I could eliminate the escalating complexity in achieving my ambitious goals. Although the first programming language I was formally taught in a