POV-Ray : Newsgroups : povray.programming : A thought for 4.0 : Re: A thought for 4.0 Server Time
28 Jul 2024 08:27:16 EDT (-0400)
  Re: A thought for 4.0  
From: Christopher James Huff
Date: 19 Sep 2002 09:10:35
Message: <chrishuff-E4B27E.09081219092002@netplex.aussie.org>
In article <3d895e0d@news.povray.org>,
 David McCabe <dav### [at] myrealboxcom> wrote:

> 1. The user gets a real scripting language that can do any kind of 
>         calculations or functions or whatever, and can even integrate
>         rendering with other tasks, automating something or other.

A "real scripting language"? How is POV not "real"?
Also, there are security issues...if it can do anything, it can do 
ANYTHING.


> 2. The user doesn't have to learn a new language, just a new API.

You assume the user already knows the language. Most users of POV don't 
have any programming experience other than POV.


> 3. You get a high-quality interpeter for free. This would greatly reduce
>         the size of POV-Ray, etc.

How would it make POV smaller? Instead of POV interpreter + POV core, 
you end up with POV core + generic interpreter + lots of glue code.


> But I digress. Of course, that which I have just briefly described could be 
> accomplished using a specialized language. The advantage of a normal 
> language is that everyone gets stuff for free.

The disadvantage: you get what you get. You can then mutate it into a 
custom language, making it more suited for your purposes but harder to 
update and losing compatibility with the "official" language, or you can 
stumble along with the unmodified version.


> Anyway, my nominations for the language are (in this order):
> 
> 1. Ruby

Not really designed to be embedded in another application, possible to 
do but awkward. I think Matz is working on making this easier.


> 2. Python

***gags***


> 3. Java

Most likely for a programmer to know, probably the fastest, but I'd hate 
to use it for scene description.


As someone else mentioned, it has been discussed many, many times 
before, but I'll say this anyway: the advantage of POV-script is that it 
is built for scene description. For example: in those languages you 
either have to create a class for vectors (which makes using them clumsy 
and takes lots of typing for the simplest things) or give up vectors 
completely, using the terrible solution of specifying 3 floats all the 
time (making it hard to tell a vector from a bunch of floats and making 
vector math nearly impossible, making bugs in math code almost certain 
for things that are extremely simple in POV).

Also, you get a pre-built language that is more powerful than the 
existing POV language, which is also harder to use for the simplest 
scene description tasks which don't require any programming and harder 
for non-programmers to learn. I started CSDL/Sapphire as a scene 
description language, and though I now think it is too complex for this 
use, I think it would be far better than any of the languages you 
mentioned simply because it supports vectors.

I think any new scene description language will have to be something 
like POV: partly a simple markup language or human-editable data format, 
with a scripting language and built-in support for vectors. Object 
oriented as well...POV is almost there, it could become a 
prototype-based OOL with just a few modifications.

-- 
Christopher James Huff <cja### [at] earthlinknet>
http://home.earthlink.net/~cjameshuff/
POV-Ray TAG: chr### [at] tagpovrayorg
http://tag.povray.org/


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.