So what if I don’t have focus?
Along side other things, I am doing a port of Rogue into C#. In particular, I’m doing a port of the Epyx version 1.48 for DOS.
The method of porting is very similar to the method I use to port old BASIC games into C#. First, I move all of the code into C# file with every line commented. Then I go and slowly replace the commented lines with equivalent C# code.
Rogue, however, is rather unlike the BASIC games I have ported. In BASIC, there was typically only a single listing/file to port. Rogue has dozens of C files.
So I decided to abuse the “partial class” feature of C#. Each of the C files went into a CS file with the same name. There is a namespace around the code, and the code exists within “partial class Program”. Yes, I have a Program class that spans nearly 40 files.
I can hear the C# people cringe.
But it just goes to show… a language like C# doesn’t force anybody into object oriented programming.