Tuesday, 20 October 2009

Introducing StrongLib

This is the first post for "Web Programming in C", so now is a perfect time to answer some questions about this blog, for example: What is StrongLib? Why is it being created? Why should you care?

What is StrongLib?
OK, easy question first. StrongLib is the name I've come up with for what will hopfully be a series of C libraries that will make it easy to write web programs in C. What kinds of web programs? Well, to start, two kinds:
  • Web Server applications. The kinds of applications, that PHP and ASP are currently used for.
  • Desktop applications that consume services from the web.
Why Create StrongLib?
I have been building the next release of Irie Pascal, which is going to be focussed on web programming, and I decided that it makes sense to create a seperate library to handle all of the web programming details, and then create the next release of Irie Pascal on top of that library.

StrongLib Foundation
The first StrongLib library is the foundation library, StrongLib Foundation. So far the design goals for this library are:
  • Provide a low-to-mid level API for common web operations (e.g. with functions for processing Unicode, and using sockets.
  • Make it easier to write portable code for all of the operating systems supported by Irie Pascal, namely Windows, Linux, FreeBSD, and Solaris. I am not tring to create some some big complicated cross-platform library that takes over your application. I just want to eliminate some of the really unnecessary differences between OS APIs (the different but functionally equivalent APIs for thread creation for example).
Learning how to use Blogger
This is my first blog on Blogger (I was using Wordpress before), so this first post is also kind of an experiment.


  1. Can you say at what point will the opensouce community see Irie Pascal and StrongLib being available for other programmers to contribute and accelerate their development and adoption?

    Also, which opensource community will you associate these projects with?

  2. It's difficult to say right now, Irie Tools is a for profit company, so it's not an easy decision. To me, the strongest arguments for open source software are (1) people should own their own data (or programs in this case), I don't want to leave anybody high and dry if Irie Tools goes away (2) effeciency (faster, better, cheaper, etc).

    Having said all of that the best candidates to be open source are the Irie Pascal Runtime engine (not the compiler), and StrongLib Foundation. I am considering releasing the source code for the runtime engine, mainly because I could have fewer supported platforms while not abandoning the existing platforms. That decision will be made when Irie Pascal 3.0 is released. The first release of StrongLib Foundation will probably not be open source.

    As far as open source commnunities go, I am a big big fan of The Apache Foundation, maximum respect to them, so I would really really want to be associated with them.