Boost logo

Boost :

From: George van den Driessche (grebe_at_[hidden])
Date: 2004-11-07 19:38:31


Noah Stein wrote:
>
>> This makes them almost the same thing. You can treat vector as a
>> point, and point as a vector. Besides, we are talking about R^2,
>> which is a vector space.
>
> Sure, there's an isomorphism between points and vectors; however, that
> doesn't make them the same. There's an isomorphism between the
> functions
> f(x)=x and f(x)=2x; however, that does not make those two equations the
> same.

This could be explained by analogy with C++, which more readers here
might be familiar with: the difference between points and vectors is
the same as the difference between C++ pointers and C++ ints. You can
add a pointer to an int, or an int to a pointer, but you can't add two
pointers. However, you can subtract two pointers to get an int.
Likewise, it's not really meaningful to talk about the sum of two
positions, but the difference between them is the vector from one to
the other.

Back on the subject of a GUI library: I understand the motivation -
that's where wxWindows arose. And I realise that nowadays a GUI library
could be done in a much more modern C++ style. But my question is: is
C++ the right language? I don't want this to descend into a religious
war - C++ is my favourite language, but it isn't the best language for
every task. Would a higher-level, more dynamic language be more
suitable for GUI work? In a perfect world, I'd do all my back-end stuff
in C++ and all the front-end development in, say, Python. By doing all
the GUI work in C++ instead of an interpreted language, you:
a) spend a lot more time recompiling.
b) can less easily tweak a running program to try out different ideas.
c) have to spend a lot of effort to construct a domain-specific
language (c.f Spirit; see (a)).
d) probably end up with a bigger codebase.
So what do you stand to gain, other than being able to write GUIs in
your favourite language, as opposed to your second-favourite language?
The only thing I can think of is that you don't have to worry about any
bridge between languages.

George


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