Am Rande notiert ...

Microsoft öffnet .NET-Quellcode. Ok, wäre noch besser wenn es gleich eine Open Source Lizenz gewesen wäre (und mit GPL hätten sie sich sogar selber absichern können), aber hey, auch diese Variante ist nicht uncool – Mitlizensierung von Patenten für die Reference-Sources ist schon mal eine gute Nummer. Und Mono hat ein Stück Sicherheit mehr bekommen.

JSIL – .NET to JavaScript compiler. Keine Ahnung, ob ich das schon hatte, aber es ist eines dieser verrückten Projekte die man ruhig zweimal linken kann. Da wird wirklich der .NET IL Code übersetzt – man kann also Programme im Browser laufen lassen, die eigentlich nicht wirklich dafür gedacht waren. Zum Beispiel soll ein Teil von XNA laufen, so dass man Spiele im Browser laufen lassen kann, die eigentlich für die XBox sind.

BOO – Getting Started. Nach langer Zeit mal wieder Boo angeguckt und mir gefällt was dort passiert. Immer noch sehr stark an Python angelehnt was die Syntax angeht, bei der Semantik aber deutlich davon abweichend – zum Beispiel echte Makros in verschiedenen Variationen, so dass es wirklich eine erweiterte Syntax gibt. Oder auch das nur optional verfügbare Ducktyping – eine Variante, die mir besonders gut gefällt, denn Boo kombiniert statisches Typing, Type-Inference und Duck Typing in einer Weise, die wirklich für den Programmierer alle Optionen offen hält. Dazu dann die gute Integration mit .Net und C# Assemblies. Ich glaube, ich muss da mal etwas mehr mit herumspielen, denn gerade als Prototyping Sprache könnte das recht praktisch sein – und im Moment tendiere ich für ein paar Sachen eh mehr zu Mono als Runtime, primär wegen der dort verfügbaren JIT Implementationen (und mit Mono ja auch AOT Compilation, wo es benötigt wird).

NancyFx/Nancy. Nancy ist dann schon deutlich näher an Sinatra oder Scalatra dran, geht aber eigentlich von C# aus – aber vielleicht kann man da ja auch einfach Module in F# schreiben, die Interoperabilität der beiden Sprachen ist ja sehr hoch (vergleichbar zu Scala und Java).

Bistro. Das ist jetzt ein Web Framework für F#, inspiriert von Django (unter anderem). Leider nicht so schlank wie Scalatra oder andere Mikro-Frameworks, aber vielleicht trotzdem mal einen Blick wert.

RaptorDB kling ganz interessant, ein klassischer Key/Value-Store für .NET der auf MurMurHash aufbaut und vor allem auf Performance und Storage-Stabilität ausgelegt ist. Könnte für den einen oder anderen Zweck ganz sinnvoll sein, speziell da es auch sauber mit Threading zusammenarbeitet.

IgniteInteractiveStudio/SLSharp. Nett – GLSL Shader in C# programmieren, der IL-Code wird dann automatisch auf die GPU geladen. High-Performance-Computing anyone?

How I learned to stop worrying and write my own ORM. Ein bischen Hintergrundinformation warum Dapper entwickelt wurde und welche Problemfälle es löst – im Prinzip wird es dort eingesetzt, wo bisher aus Performancegründen direkte SQL Zugriffe über Linq „getunnelt“ benutzt wurden, weil Linq2Sql dort ineffizient ist.

dapper-dot-net – Simple SQL object mapper for SQL Server. Könnte eventuell ja ganz interessant auf der Arbeit sein. C# bietet ja auch Linq an, aber nach deren Messungen scheint Dapper deutlich auf Performance getrimmt zu sein.