Subject: Re: [boost] GSoC: Boost.Graph library - Graph Connectives
From: Andrew Sutton (andrew.n.sutton_at_[hidden])
Date: 2010-04-01 11:24:42
> I'm Yaroslav Vorontsov (or simply Jerry Lee :-)), a student of Computer
> Science Department of Voronezh State University, Russia. I'm interested in
> both generic programming and graph theory, and I also would like to
> participate in Google Summer of Code 2010. I had some experience of generic
> programming before when I tried to implement my own generic graph library in
> C# (of course, as a task on one of programming courses at the university).
> I've read that (quote) "The Boost.Graph library is missing connectives...".
> I'm quite familiar with C++ and the idea of generic programming and I'm
> working with some graph theory aspects at the moment, so I want to know:
> what particular skills (in programming, of course) are needed to develop
> graph connectives?
Hi Simply Jerry Lee :),
Good question. Working on the Boost graph library requires a sound
understanding of its organization and its construction. There are a lot of
techniques used in its construction that are atypical of most OO libraries
(even C# generic data structures). You should be able to identify aspects of
an algorithm that aren't "universally generic" and understand how to
abstract them using templates, types, metaprogramming, etc.
Most of that can be learned on the job, so to speak, but having a good eye
for abstraction certainly helps.