11.19.2002 10:40 PM

Man, getting back on the book writing trail after a break isn't easy. The mindset just isn't there. Plus, I'm trying to get some simple SML.NET code to run, and it isn't working as expected. Oh well - it's better to re-start rough than not at all.

I'm starting to think that this whole .NET language interoperability thing is just not going to become a "real-world" reality. Yes, everybody and their parents have been saying that since .NET was introduced to the world 4 years ago, but after spending a lot of time looking at other compilers (e.g. Eiffel, Python, SML.NET, etc.), I just don't see a lot of .NET development being done in any other language other than C# or VB .NET. Don't get me wrong - I think these other languages have a lot of excellent ideas. Nor am I saying that they will never be used by developers who sell .NET-related products. But trying to map the ideas to .NET constructs isn't easy. Plus, some of the docs for these compilers are not as good as I was hoping for. Maybe it's just me, but if I'm writing a .NET-based compiler for my language of choice, I should show a number of clear, consise examples illustrating how to use the language to create .NET assemblies. So far, I'm not seeing that to the level that I'd like. I understand that these languages also need to spend time discussing how their keywords now map (or don't) into .NET. But the end result is an assembly, and for someone who knows little about these languages, getting the "here's how it works" examples are tremendously beneficial.

I remember when I was working on my master's thesis, which was on multiple-precision arithmetic using the number theoretic transform (yes, it sounds oh-so-impressive; at the end of the day all I was doing was multiplying big numbers together). In one chapter, I was focused on showing why the NTT works, but after my advisor saw it, he said that I needed examples to show how it works. His reasoning was by including examples, it would make it easier for the reader (i.e. my other two reviewers on my defense committee) to understand why the NTT works. He was right. It was obvious to me how it all worked because I had done so many examples to make it clearer for me to understand. But to someone who had never seen an NTT, seeing a small example works wonders. Ever since then, I've become thoroughly convinced that giving good examples are essential in illustrating a key point.

I guess that's why I hate method names like Foo() or Quux(). They don't mean anything to me, whereas an inheritance example using geometrical shapes is easier for me to follow. True, analogies are only good to a point; an understanding of the concepts independent of any "real-world" example is definitely needed. But most of the time, I need to live in the pragmatic world where the fact of why the arguments of an overriden method need to be contravariant to be type-safe doesn't help me in getting my data out of SQL Server. Well, indirectly, one could argue that it does, but when I write my C# code I don't care; I just want to get the job done. Seeing applicable "here's-how-it's-done" examples are crucial at that point, and (to get back to the original point) I'm not seeing that with the docs from other .NET compilers.

Case in point. SML.NET's docs are great at talking about the interop issues that occur in trying to map the language to an assembly. However, the end result is an assembly, and I would much rather see more discussion on how to create a _classtype effectively. The only two examples (Point and ColoredPoint) are mundane at best. Show me how I can create a classes and enumerations and delegates and interfaces first. Then discuss how other SML.NET constructs work.

I was also a little torqued at "That 70s Show". It used to be funny at times - now it's just getting old fast. It's on before "24", so I was (sort-of) watching it. The issue at hand is that one of the characters visits Marquette University, my old stomping grounds. Unfortunately, they screwed up the team name. In the 70s, it was the Marquette Warriors; that didn't change to the Golden Eagles until the 90s. But they had "Golden Ealges" on two signs in the background! Yes, this is a trivial issue. But how hard is it to look back in a university's history to see what the team name was?

* Posted at 11.19.2002 10:40:00 PM CST | Link *

Blog History