Parks Computing
Welcome to the personal web site of Paul M. Parks. This is where I keep my web development skills current while sharing snippets of code, utilities, libraries, and what little development wisdom I've gathered in my career. It's also where I show off my family, talk about my hobbies, or just pontificate from time to time.
If you find the articles interesting, or if you'd like more information on a particular topic, let me know [paul@parkscomputing.com].
June 7, 2007 A New, New Wiki
I've replaced the old Wiki with a new Wiki based on the Mediawiki engine. This is now the official Wiki for the Undernet IRC channels #c++ and #c++/cli. It's still in the beginning stages, so feel free to create an account and start adding articles.
May 18, 2006 Barcode Generator
More fun with one of my favorite languages: A barcode generator written in JavaScript that will create an EAN-13 barcode. The page is completely self-contained and uses no graphics or server-side code.
I've only tested the page in Internet Explorer 6, Internet Explorer 7 beta, and Firefox 1.5. I'm not going to target older browsers, but I am interested in hearing about problems in current browsers other than those mentioned above.
January 7, 2006 A New Wiki
I have just added a Wiki to the site that is devoted to the C++/CLI language extensions. Feel free to add or edit content, and send me any suggestions you might have for improvements.
August 12, 2005 A New Website
No, I'm not dead. Yet. I've just been pretty busy lately. One of the things I've been doing is setting up a network, intranet site, and web site for my kid's school, Collins Hill Christian School. It bears an uncanny resemblance to this one, of course. Once I get something working, I don't like to deviate much from it.
February 23, 2005 Lisp Interpreter in JavaScript
Lisp is becoming a theme here, apparently. I suppose I've read so many Paul Graham essays that I'm becoming a fan of the language. In order to become more familiar with it, I decided to write a Lisp interpreter in JavaScript. It's not quite complete, and the semantics are definitely not entirely correct, but it's at least usable. The page is even partially scripted in Lisp, and as I debug the interpreter and add more to it (such as loop constructs) I'll convert more (and eventually all) of the JavaScript to Lisp. Once you browse to the page, view the source and scroll down until you see a <script type="text/lisp"> block.
I have only tested the interpreter in Firefox and Internet Explorer 6, so I'd like to know how it works in other browsers. If you want to look over the interpreter code, download it and play around with it. If you make any additions, changes, or corrections, I'd love to hear about them so I can incorporate them into the code.
December 16, 2004 Lisp for C++ Templates
I'm not working quite as many hours as I was earlier in the year, so I'm able to concentrate on more long-term projects of my own in addition to my regular work responsibilities. Before I get back to the Accelerated C++ Solutions I'm going to play around a little bit with extreme template meta-programming in C++. Toward this end, I am implementing Lisp primitives with C++ templates for manipulating typelists. So far I only have the primitives online, but I'll hopefully have some examples of their usage up soon.
July 14, 2004 The pbrain Programming Language
I've been working really hard lately - 70 or more hours a week. Consequently, I haven't had many opportunities for diversion. After staring at the same application all day, every day, though, it's important to step away and give my brain another puzzle to solve now and then. One such late-night/early-morning excursion produced The pbrain Programming Language. This language is an extension of an extremely tiny Turing-complete language called Brainf**k (yes, the name contains a really, really bad word).
Update: A pbrain Compiler for .NET
Since I was halfway home with the interpreter, I decided to go ahead and write a compiler for .NET platforms.
March 23, 2004 SmartSam.com
I have started testing several DHTML widgets at my other domain, SmartSam.com. These widgets, which include moveable, resizeable panes, expandable lists, and other GUI-ish controls, are all destined for a suite of web applications that will be hosted at the same URL. I am anxious to get feedback from as many users as possible about how these widgets work in various browsers. So far I can only test in Internet Explorer 6, Opera 7, Mozilla, and FireFox.
March 9, 2004 Updated HTML 4.01 Reference
I have updated the index for the HTML 4.01 Reference. Each element now has a collapsible list of attributes beneath it. I was more than a little bleary eyed when I finally finished, so please let me know if you find any mistakes. There's a lot more that I want to add to this index, such as a list of attributes and different categorizations of elements, but this will do for now.
The index was inspired by Eric Meyer's indexed CSS2 Reference.
February 25, 2004 New Look
The old look and color scheme were really starting to get old to me. I wanted to return to a much simpler layout, without all those boxes everywhere. My favorite pages aren't ones with a lot of glitzy graphics and layout, but rather those that resemble "print, plus some." I don't think I've quite nailed down what I'm after, but this is closer.
Navigation Widget
I've added a new navigation widget which will be stationed along the right-hand side of the browser window. It will summarize the content of each page and enable the reader to jump directly to a particular topic without having to scroll around a lot.
Bye-bye, Old Browsers
As a part of this effort, I'm going try even less than I was to support older browsers such as Netscape 4 or Internet Explorer 5. Sorry, but upgrades are cheap. I do, however, strive to always support text-based browsers.
December 3, 2003 Updated MMP Mancala
I've received a few complaints from people who downloaded my Mancala game, telling me that certain DLLs were missing. I've rebuilt the game and repackaged the installation file to include all necessary files. I apologize for this oversight.
December 3, 2003 More on Accelerated C++ Solutions
For those of you that have been kind enough to write with regard to the Accelerated C++ Solutions page, I haven't forgotten you. I will be updating the site with new chapters Real Soon Now. If you have any suggestions on how to improve the solutions site, please let me know [paul@parkscomputing.com] .
September 30, 2003 My Workout Routine
In case you're wondering: No, a buff computer geek is not in the same category as Bigfoot, the Loch Ness Monster, and little green men. I've been on a bodybuilding program for the last 5 months, and I look and feel better than I ever have.
Update: I've resumed working out after a layoff, and my new information is at http://www.parkscomputing.com/cppwiki/index.php?title=High_intensity_training.
June 18, 2003 Accelerated C++ Solutions
I often recommend the book Accelerated C++ [http://www.acceleratedcpp.com/] to people who are just beginning to learn the C++ language. One complaint I often hear is that there are no solutions provided for the exercises. This page [http://www.parkscomputing.com/acpp/] exists to remedy that problem.
March 14, 2002 .NET Linked List
The .NET framework does not have a generic linked list class among the collection classes in System.Collections. This article describes a linked list class that I wrote that implements System.Collections.IList as well as a new linked-list interface and a bi-directional iterator.
February 20, 2002 Updated 99 Bottles
A couple of weeks ago I posted a C# class that outputs the song, "99 Bottles of Beer." I've since made a small revision. I originally used a delegate where an event would have made more sense: handling the "out of beer" event. Go see the new version.

