I grew up with Assembler, Pascal, then C, then C++, then C#, and now I'm back to C++. I've found that C# makes things easier for graphical programming, but it feels sluggish when doing some computationally intensive things. I've since moved back to C++. Development time has increased on some stuff, but I think things are better, and I derive more pleasure from C++ development. And C++ has a rich heritage and a rich library universe. This entry goes through some interesting things I've found.
One of the first libraries I came across was the
Boost Libraries. I believe I've written
about these before. A few specifics of interest include Regular Expressions, a soon to be
released Time Series, date/time operations, some geometry constructs, state machine tools,
and, well, the list goes on.
A few days ago, in looking for sophisticated Web Application tool kit.
Wt: a C++ Web Toolkit appears to
fit that niche very well. It also handles Ajax like functionality.
To assist with web development and layout,
Firebug: A
Firefox Addon might be of value for page layout issues. Although it has nothing to do
with C++, which is the main topic here, it does have to do with finding a viable solution
for checking out web page design.
Earlier today, I came across dzone: fresh
links for developers. It has a wealth of links to articles written by developers for
developers, developers of all categories and skill sets. Doing a search on C++ comes up
with quite a list of articles.
One of the links pointed to
The Programmicon. This article is mostly game based, but gaming shares
cross-functionality with many disciplines. This once had two links to resources regarding
finance. I was first introduced to Multivariate Embedding Methods by Carol Alexander on
page 405 of her book Market Models. Although she won a prize for best price predictor using
a model with that concept, I havn't been completely sold on it's applicability. If I had
time I'd try it out. However, a key part of embedding is nearest neighbor analysis. The
Programmicon points to a site providing
ANN: A Library for
Approximate Nearest Neighbor Searching. It also points to
TMV - Template Matrix/Vector
Library for C++, something else upon which embedding algorithms are built. Embeddings
are based upon chaos theory. The concept is to try to find self-similarity in continous
time. When similarities are found, you've got a predictor. Easier to say than do.
dzone also re-introduced me to LUA: An
Embedded Programming Language.
Debian
Administration discusses how to incorporate it in to C++. I'm thinking it might be
useful for scripting signals in a network monitoring package or defining charts in a
financial modelling solution, or performing information searches in text analysis tools, or
performing event & signal handling in a Cricket grapher.cgi rewrite. IEEE Software has an
8 page article called
Traveling Light, the Lua Way.
Kind of related is Kepler: Lua based web development platform.
During a brief flirtation with Fuzzy Logic, where one needs to evalute line crossings and
area calcuations, I realized Computational Geometry might be of use. The C++ library
Wykobi might be of value for optimized
algorithms.
The Code Project
discusses its use.
I'm currently 'enjoying' MFC based development. I'm wondering if, since I'm still at a
relatively early stage, I should be using
TrollTech's Qt: Cross-Platform Rich
Client Development Framework.
From a Microsoft perspective,
Somasegar's Weblog has an article on 'Visual C++ Futures'. There are more
than 200 user comments summing up needs, wants, and desires in that universe.