![](/i/fill.gif) |
![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
"David H. Burns" <dhb### [at] cherokeetel net> wrote:
> Someone told me that the next version of Pov-Ray would be OOP. Horrors!
Definitely not: The next version to come - POV-Ray 3.7 - will feature just the
same SDL as 3.6, except where functionality has changed and require adaptation
of the SDL.
Replacing the SDL has been discussed for POV-Ray 4 though, including the idea to
provide much better support for OO programming. But that's still some time to
go, and to my knowledge no concrete decisions have been made yet.
(BTW, shame on you - this topic's off topic here... :P)
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
"David H. Burns" <dhb### [at] cherokeetel net> wrote:
> > 2. What would be so bad about this being true?
> It would be too complex to be usable by ordinary folk (i.e. me).
Not if it's done right.
It might be too complex for ordinary folk to make use of its *full power*, but
simply coding a scene should be no tad more difficult than it is ATM.
To the contrary: It might allow programmers to write more sophisticated "macro"
suites and make them much easier to use for ordinary folk.
(All provided POV-Ray gets a custom-tailored language; with any "off-the-shelf"
language I've seen so far, you'd likely be right: It would become unnecessarily
cumbersome.)
I can understand your resentments: When I first came into contact with anything
officially labeled "OOP", I just thought "WTF?!" - that was Borland's "Turbo
Vision" for Turbo Pascal 6. It looked like it made programming absurdly ugly
and complex, and the section on OOP in the manuals started out in a way that
didn't seem to make any sense to me.
Next time I was introduced to OOP, however, I found that I had been using OOP
concepts already, and what was labeled "OOP" were actually just language
features that made it simpler to implement them, and more-or-less useful
libraries making use of these.
As for the ugliness, I found that most of it was the particular ugliness of the
Turbo Vision framework - or rather actually Borland's idea of how they should
be used - and had nothing to do with the language's OOP extensions in general,
and the residual ugliness was due to these extensions having been designed into
an already-existing language.
Another reason for people experiencing OOP as particularly complex is that many
people encounter it in the context of graphical user interfaces and stuff like
that (a good deal of Turbo Vision, too, was dedicated to windowing user
interfaces, though they were text-based back then); often the high complexity
of the user interfaces is then wrongly associated with OOP in general.
BTW, a work colleague of mine, who *started* his programming carreer with OOP,
was struck with horror when he first made contact with classical procedural
programming...
The bottom line is this: If the language is designed with care, supporting OOP
will allow "wizards" to write libraries with very elegant interfaces, without
interfering with the ease of general scene coding.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
I've looked at enough OOP programs. Pov-Ray's current scripting language
is easy to use once you learn the syntax. All that the introduction of
OOP would do
is to make it more difficult and time consuming to write a workable
script. It matters
little to me if the Pov-Ray source is written in OOP, though I think it
would be a step
backwards or maybe side ways. (In fact it will probably become
necessary for the source
code to be written in OOP at least until the fad dies.) I am unlikely to
look much at the source
code. I looked at it earlier because I wanted to try to do something
that I thought couldn't be done
current Pov-Ray --make a "mirror" surface whose "reflection" is
controlled by a supplied
algorithm. I now think that this can be done (at least to some extent)
with "normals".
What I don't want to see is the scripting language OOPified! As I said
it already uses "object" with "data
members" and "methods", but it doesn't require the complex and (to my
mind) arcane OOP structure
and "philosophy".
David
Warp wrote:
> And exactly how do you know this?
>
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
clipka wrote:
> It might be too complex for ordinary folk to make use of its *full power*, but
> simply coding a scene should be no tad more difficult than it is ATM.
>
That could be true, but I'm skeptical. The "full power" users would
dominate and the
rest of us would be sidelined, as has happen in programming in general.
But maybe the
old versions would be left for the rest of us and not be scuttled as in
programming.
:) Does this work?
David
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Warp wrote:
> David H. Burns <dhb### [at] cherokeetel net> wrote:
>> Chambers wrote:
>
>>> Why do you associate OOP with .Net?
>
>> Needless complexity.
>
> That didn't answer the question at all.
>
True I didn't use a complete sentence. Both OOP and .Net programing seem
needlessly
complex. My sole experience with .Net is with Microsoft Visual
Basic.Net, version
2008 and the first version. I really don't know the significance of the
".net" extension
attached to a program name, but I associate it with Microsoft bloat and
obscurity.
David
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Warp wrote:
> The whole idea of object-oriented programming is to make it *easier* to
> write programs, especially compared to straightforward imperative/structured
> programming (as the SDL is currently).
>
That I cannot believe!!
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
clipka wrote:
> (BTW, shame on you - this topic's off topic here... :P)
>
>
(Laugh) I love it! What can be off-topic to off-topic? What you mean, I
think, is that
this topic is forbidden! Or maybe simply unwanted.
So I'll apologize and go do something more useful.
:) Does my smile work? No need to answer that. I'll read my post.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
David H. Burns <dhb### [at] cherokeetel net> wrote:
> Warp wrote:
> > The whole idea of object-oriented programming is to make it *easier* to
> > write programs, especially compared to straightforward imperative/structured
> > programming (as the SDL is currently).
> >
> That I cannot believe!!
Well, then I can only say that you are wrong. The whole idea of OOP is
to make programming easier and more manageable. That's why it was invented
in the first place.
Do you really think a new programming paradigm would be developed and
get widespread if it was *harder* to use than older, ascetic imperative
approaches?
You seem to have the misconception that in order to write a program in
an object-oriented programming language you need to know the entire language
before you can do anything.
You are saying that the current SDL is easy to learn. Do you honestly think
that making it object-oriented means removing those easy control structures
such as while-loops and functions?
And can't you see how limited the current SDL is? For example, how can you
increase the current camera angle by 5 degrees? Or read the pigment of an
existing object at a specific point? Or create a binary search tree? Or remove
an object from an existing union?
You can't. Why? Because the current SDL is an archaic pile of kludges, one
on top of another. It's limited, inflexible and hard to use for anything
more complicated than simple while-looping.
--
- Warp
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
andrel wrote:
> On 21-7-2009 18:04, David H. Burns wrote:
>> Invisible wrote:
> The original way by using colons and brackets. If you have an recent
> newsreader it will substitute the smileys.
Thanks. :) like this or maybe like this :]?
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Warp wrote:
> Do you really think a new programming paradigm would be developed and
> get widespread if it was *harder* to use than older, ascetic imperative
> approaches?
>
Yes, (though I have no idea what "ascetic imperative approaches" means)
such things have
happened more than once! But I've been ruled off topic again --
which is a good thing, it keeps from wasting my time and yours on my
soapbox. :)
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |