POV-Ray : Newsgroups : povray.general : 4.0 Feature discussion : Re: 4.0 Feature discussion (long) Server Time
9 Aug 2024 13:23:50 EDT (-0400)
  Re: 4.0 Feature discussion (long)  
From: Greg M  Johnson
Date: 4 Oct 2000 08:25:17
Message: <39DB2066.609F5B00@my-dejanews.com>
Alessandro Coppo wrote:

> What I am saying is that if the POV team gives us a more
> powerful language to build complex scenes, the better.

> ... You are an
> OOP purist (right, I HATE procedural languages) so I make this proposal:
> pair old macro language with, e.g.  Python.

Here is the caveman's answer to your proposal: keep the language simple.  There
are non-programmer enthusiasts out here in the pov community.   I'm a
metallurgical engineer who has a lot of programming sense (aced BASIC in high
school and FORTRAN in college) but every time I pick up a Java book, and some C
books, I drop it, gagging.  BASIC has a nice intuitive sense for us
non-programmers, and the current povray language is equally cool.

Here I a joke I told a year ago.  If the father of Java had invented povray, we
would have to code our scenes like this:

//---------------------------------------------------------------------------------------------------------------------------

import java.colors.*
import java.geometry.shapes.*
import java.light_sources.*
import java.rays.traceable.*

public void status main init destroy sPhere {
    java.Geometry.Objects.shapes.roundyOnes.convexOnes.sPhere()
    new radius= Radius;
    new finish= Finish;
    Radius= 1;

    public void status main init destroy fInish{
        java.texture.finish.prettyOnes.Reflective()
        this.Finish=that.fInish;
        die;
        }
    public void status main init destroy lOcation{
        java.space.Cartesian.coordinates.linear.Nearby()
        this.Location.x=0;
        this.Location.y=0;
        this.Location.z=0;
        die;
        }
}

public void status main init destroy pLane{
    java.Geometry.Objects.shapes.infiniteOnes.flatOnes.Plane()
    this.Direction=up;
    public void status main init destroy pIgment{
        java.texture.pigment.complexOnes.cHecker()
            this.Pigment=try  {
                this.color=pigment.Green;
                catch e exception error void yourself on main street();
                that.color=pigment Red;
        die;
        }
    }

public void status main init destroy you all {
    java.Devices.nonObjects.pIcturetaking.cAmera()


Post a reply to this message

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