relisoft.livejournal.com
Rewrite - Developers' Journal
http://relisoft.livejournal.com/14633.html
Rewrite - Developers Journal. August 7th, 2006. I gave up and started rewriting the differ. This code has been neglected for too long. I'm still trying to minimize the scope of the rewrite, but it doesn't look good. I wonder if things could have been anticipated. If the design could have been better, so that the need for rewriting could have been minimized. Lesson: Don't try to use the message-passing Windows architecture in C beyond what's absolutely unavoidable! September 13th, 2006 02:02 pm (UTC).
relisoft.livejournal.com
Wiki parser - Developers' Journal
http://relisoft.livejournal.com/15155.html
Wiki parser - Developers Journal. October 26th, 2006. I've been adding features to Code Co-op's wiki parser at the average pace of one a day. Most of the work now concentrates on built-in SQL queries, in particular the WHERE clause of the SELECT statement. I knew that once the wiki subsystem was released in the beta of Code Co-op 5.0, users would ask for more and more features. And indeed they did. So now you can embed queries like this in your wiki page:. I also wrote articles about peer-to-peer wiki.
relisoft.livejournal.com
Check-in - Developers' Journal
http://relisoft.livejournal.com/13519.html
Check-in - Developers Journal. July 30th, 2006. At last a moment of free time! I re-read my last two posts to figure out what to do and I quickly implemented, tested, and checked in the following change: Initialize tabs based on FileNames. Next step: Create the environment for tab selection handling. Define the class FileViewSelector, as described here. Powered by LiveJournal.com.
relisoft.livejournal.com
Simplifying Code - Developers' Journal
http://relisoft.livejournal.com/12593.html
Simplifying Code - Developers Journal. July 23rd, 2006. I can't stress enough how important it is to immediately follow any extension of functionality with a refactoring and simplifying step. We've learned it at Reliable Software the hard way. What happens if you skip those steps? Then we promptly forget the ad-hoc chunking, and the next time around we have to go through the same process again. What a waste of time! TabCtrl- GetView ().SetSelection (FileAfter);. This modification required some changes in...
relisoft.livejournal.com
Another check-in - Developers' Journal
http://relisoft.livejournal.com/13822.html
Another check-in - Developers Journal. July 30th, 2006. Clicking on tabs now displays a message box with the appropriate path. Why is it so important? Because now I know that I have an environment for implementing the main functionality- switching files in the differ window. I have to fill in the implementation of the top controller's ChangeFileView method. In all likeliness I won't have to touch any part of the UI or top level objects. I'll be working on a lower level of abstraction.
relisoft.livejournal.com
Resolution - Developers' Journal
http://relisoft.livejournal.com/12537.html
Resolution - Developers Journal. July 24th, 2006. That was exactly the problem. I added the following three lines to ControlWithFont:. Private: ControlWithFont (ControlWithFont const &); ControlWithFont and operator= (ControlWithFont const &);. And the compiler caught the problem immediately. Tab: Handle was being passed by value to TabSequencer. I have no idea why this code worked before- it shouldn't have! Powered by LiveJournal.com.
relisoft.livejournal.com
afxres.h - Developers' Journal
http://relisoft.livejournal.com/14930.html
Afxres.h - Developers Journal. October 14th, 2006. You can use Visual Studio 2005 C to create windows applications without MFC, right? It turns out that as soon as you create a resource file, VS puts this statement in it: #include afxres.h . This include file is absent from your installation if you chose not. To install MFC support with Visual Studio. If you remove the include statement, the compiler will tell you that IDC STATIC is not defined. October 16th, 2006 10:36 am (UTC). I just always replace the.
relisoft.livejournal.com
Snag - Developers' Journal
http://relisoft.livejournal.com/12038.html
Snag - Developers Journal. July 24th, 2006. So far the implementation has been a breeze, 15 min here, 20 min there. And suddenly I'm in deep trouble. Hours are passing and I'm making zero progress. All this refactoring was not supposed to change the functionality, right? So why are the tabs in Code Co-op displayed using the ugly default Windows font? Powered by LiveJournal.com.
mvanier.livejournal.com
Yet Another Monad Tutorial (part 8: more on state monads) - Mike's World-O-Programming
http://mvanier.livejournal.com/5846.html
Rants and articles about programming languages. Yet Another Monad Tutorial (part 8: more on state monads). In the previous article. We learned what state monads were and how they worked. In this article we'll work through a complete (though very simple) example and we'll constrast Haskell's state handling with the equivalent code written in C. To start with, we'll look at a simple function as you might write it in the C programming language:. Int gcd(int x, int y) { while (x! The Haskell function reduces...