Boost logo

Boost :

From: Gennadiy Rozental (gennadiy.rozental_at_[hidden])
Date: 2004-04-07 01:45:44


> > I am not sure what that mean. What is 'functional' in basic_string
> > class template? May be we just need to define terms.
>
> The fact that you can't change the template, just like all templates
> in C++.

As well as any other class/struct/union. Does it make all c++ entities
'functional'?

> It is immutable, so metafunctions are strictly pure functions.

This is not nesserary good thing. I would prefer to be able to use
imperetive style in metaprogramming.

> Of course, basic_string doesn't perform a very interesting
> computation as a template, which is why it doesn't look very
> functional to you. But in fact, it does perform a computation. It takes
> a character type as input and produces a string type as output. You
> cannot change the input character type into the string type, which is
> part of why the template is functional.

In this sence definition "int const" is also 'functional'. It take type int
and 'produces' different type int const.

> > [...]
> > From that stand point I believed in my review (still do) that FC++ is
> > just a toy not a Tool.
>
> I wasn't talking about FC++ in particular here, but rather FP in C++.
>
> > Toy is something kids play with, Tool is something adults use
> > to do a real job.
> > [...]
>
> I think this is a pretty unprofessional way to make your point.

If you think so. I was just used analogies you introduced.

> Dave

Gennadiy.


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