Boost logo

Boost :

From: Joel Young (jdy_at_[hidden])
Date: 2003-08-17 21:20:11


From: Brian McNamara <lorgon_at_[hidden]>
> A question I should I asked before: why were you using FC++ in the
> first place? (That sounds too accusatory. :) ) What feature(s)
> motivated its use? Can you give an example of a "linear algebra
> pipeline" that you might want to express as a functoid (or something)?
> I'm afraid I don't have a good enough sense of the domain and what FC++
> features you wanted; there may be some useful solution along a
> completely different path...

This was more than a year ago so I am rebuilding from memory.

Why FC++

I found myself writing some codes where I wanted to perform a
set of linear algebra operations on some vectors such as

cosine_angle((normalize(sum_into(vec_a, scale(new_data_vec_a,5))),normalize(sum_into(vec_b,new_data_vec_b)))

which would return a double and lots of side effects from 4 vector
arguments. This is just from memory tho.

and I got very tired of writing new function objects every time I wanted
to change something a little bit. I wanted to be able to write these
equations inline to be used by my other algorithms as functions.

> completely different path

Surely there are many :-) I ended up deciding that it wasn't important
and just had a function object with a switch statement selecting one of
a bunch of different such "pipelines", so when I wanted to use a new one
I'd just add it to the switch. very elegant ;-)

Meanwhile my officemate would be blabbing about monads and continuations
and things like that...

Joel


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk