"jr" <cre### [at] gmailcom> wrote:
> the flip side is, every such "flexibility" comes, somewhere down the line, at
> some cost. for instance, allowing:
> #declare A = "foo";
> #declare A = <1,2,3>;
> gives flexibility, but also means that (automatically) optimising code has
> become too costly (in time), if not impossible altogether.
I don't know how it gets optimized, or why allowing recasting would break that.
If I can envision a macro that checks if an identifier that I'm trying to use is
defined - and if it is, then first I undefine it, and then proceed as usual -
then I would imagine that such a thing could be done in C / c++.
It would be very nice indeed if we had a way in SDL (or povr) to determine the
type of an identifier. This would be _extremely_ useful when importing data
with #read and probably other cases as well.
As much as I like the programming aspect of POV-Ray, it is of course, a
raytracer, and the point is to make renders, not pedantically ram "best coding
practices" down some newbie doodler's throat.
At that point, perfect becomes the mortal enemy of good, and we lose a lot of
otherwise new USERS - which POV-Ray will die without. Having recently been
thrust into coding the Arduino, which is supposed to be designed for "beginners"
and kids - dealing with all of the esoteric BS involved with strings and serial
input, buffers, types, etc --- it's a REAL PITA to even perform otherwise simple
tasks. And I'll bet some people simply give up out of frustration.
Do we really want to repel people with an even steeper learning curve?
I mean, I see us stuck between accessibility, speed, and accuracy.
And the multithreaded source code has already become a vast, organically
interwoven behemoth. It's hard to say what the best route to take is.
Post a reply to this message