POV-Ray : Newsgroups : povray.general : Calling external Math functions from .dll or .so Server Time
2 Aug 2024 08:12:06 EDT (-0400)
  Calling external Math functions from .dll or .so (Message 84 to 93 of 103)  
<<< Previous 10 Messages Goto Latest 10 Messages Next 10 Messages >>>
From: Jim Henderson
Subject: Re: Calling external Math functions from .dll or .so
Date: 14 Feb 2005 21:10:09
Message: <pan.2005.02.15.02.10.07.991880@nospam.com>
On Mon, 14 Feb 2005 19:35:46 -0600, Thorsten Froehlich wrote:

> Jim Henderson wrote:
>> pointless and useless, so why *do* you bother reading it?
> 
> The problem is once started, there are a few people here who will just add
> incorrect facts to it as the last posts.  in the past this came back to
> bite us.  And of courses, i never intended to have such a long discussion.

Well, you've made yourself clear as to your views, so if it were me, I'd
just bow out and let the rest of the people having the discussion do their
thing. :-)

>> comments do is distract from the actual discussion, which while you may
>> think is pointless, there are some people who are actually interested in
>> the ideas.  Maybe they won't ever be implemented in POV-Ray - but what
>> does that really matter?
> 
> As this server is for discussion of POV-Ray, yes.  Probably this whole
> discussion should have moved to p.off-topic a long time ago..

Well, certainly as a member of the POV-Ray team, it's your prerogative to
suggest that.  But continuing to post STFU messages hasn't achieved your
goal, it's just intensified the debate/argument/disagreement.  Not really
what you were aiming for, was it? ;-)

>> Quashing discussion just because you don't see the value, or because
>> you believe there is no value does nothing to encourage people to think
>> and consider that they might actually have something to contribute of
>> value.
> 
> There is a difference between various POV-Team members not seeing any
> value in it and repeating a discussion for the 11th time.

Maybe for you because you've already seen the discussion.  It's like
discussion of VLV for me in my company's product. Someone has this idea
about every 6 months.  Now, I deal with *paying* customers, so I have
perhaps more of an incentive to not frustrate my user base, but in the
end, we're both looking for the same thing, right?  More users to use the
software and to enjoy it (or benefit from it, as the case may be).

>> You want people to contribute things that are of value, right?  Well,
>> if I read this discussion and think "Man, there's no way that I might
>> contribute something that ______ would consider valuable, so why should
>> I even suggest my idea", and then the idea is lost.
> 
> This group would be the wrong place for such discussion!  

Your FAQ would appear to suggest otherwise, unless I misread it.

> There is a
> huge difference between making a suggestion and being told that it has
> been rejected and just letting it go, or to continue arguing that all
> the developers of POV-Ray are obviously so stupid or uninterested in the
> development of POV-Ray that they just don't want to implement it (which
> some, not you, have done).

I don't think anyone intended to call the developers stupid - but I'd have
to let those in the discussion speak for themselves.  I do think, however,
that even if the benefit of the discussion doesn't seem particularly valid
at the time, such discussion can well spark a thought about development in
a totally unrelated area.  I've seen that literally thousands of times in
my years of doing online support.  It's quite amazing where a tangent can
take you, even when the original discussion had nothing to do with where
you ended up.

>> 1.  You don't seem to be able to ignore threads you see no value in,
>> and
> 
> Actually, I already ignore 99%+ of the threads on this server.

Might I respectfully suggest that this should be another one, then?

>> 2.  You seem to just want to argue for the sake of arguing.
> 
> Certainly not.  I have no need to argue with certain people because I
> know it is a waste of time.  However, I do have a problem when those
> people who make outright false or defamatory remarks about POV-Ray
> development or developers on this server.

Well, certainly feeding the discussion and providing more ammunition
(whether valid or not - IM(perhaps NSH)O you don't deserve it, and I think
there is very likely a huge cultural difference here as well that's not
helping things.

>> In fact, I found it somewhat amusing that in this thread you've gone on
>> and on about the lack of portability, yet in another recent thread
>> about launching POV-Ray in a cross-platform environment, you indicated
>> that cross-platform support wasn't important to you personally.
> 
> Apparently you are confusing me with someone else.

Quite possibly - I was recalling a discussion where someone said something
about wanting to launch POV-Ray from a cross-platform modeler they were
developing, and I recall something being said about the lack of a
command-line in the Mac and that there were other methods to accomplish
the task on the Mac platform.  Not being a Mac developer, I've no idea
about those methods myself, just was recalling the discussion.  If it
wasn't you, my most humble apologies for the mistake.

>> say that I learned a lot not because Dan Farmer said to me "You're an
>> idiot and don't know what you're talking about" but took the time to
>> explain something to me that I didn't understand, even though it was
>> probably the 300th time he had explained it to someone.
> 
> Actually, back then there were far fewer people online and those who
> were online were almost all less "demanding" when it comes to what they
> expect from something they get for free.  

Actually, there were fewer people, but the amount of "demanding" hasn't
really changed that much, particularly with things that the source is
available for.

> Not to mention, a certain
> level of computer talent was needed to get online.  

It was on CompuServe, and they made it easy - in fact, being online on
CompuServe wasn't limited by technology so much as it was by whether you
could afford it or not, because it was paid for by the minute of connect
time.

> Today even for a
> free offer you get plenty of flames for truly random reasons or no
> reason at all from people who ten years ago could not have managed to
> get online even if they wanted to.

Sure, but feeding/fanning the flames back then ended in the same result as
feeding/fanning them now.  People have not fundamentally changed in that
regard, there's just more of them.

>> And yes, those
>> discussions were had a bit before you got your driver's license.
> 
> Which reminds me I should update my website, that picture is really old
> now... ;-)

<G>  There's a reason I don't post photos of myself on my own website.

>> That's the nature of online support, my friend.  I've been doing online
>> support for nearly 15 years now, and the nature of it is that you
>> *will* have the same discussions over and over and over again, ad
>> nauseum. That is virtually *guaranteed*, and there is absolutely
>> *nothing* you can do about it.
> 
> Oh, hence I posted the link to an old discussion.  Interesting enough,
> absolutely nothing new came up in this one, but plenty was repeated from
> the last ones.  Obviously it is fine to discuss the same thing again and
> waste resources for that, but it is not necessary to read the old
> discussion. Personally I think such attitude is unacceptable.

Well, in your life perhaps it is.  There are probably quite a few (such as
myself) who did go and read the old discussion, and the link was quite
helpful.  But as I said, the nature of people hasn't changed fundamentally
when it comes to interacting online (well, in the meat world that's true
pretty much as well).  People will continue to do things that you or I
consider to be not particularly bright, and nothing we say or do will
change that.  My approach is just not to let myself get wound up about it
(because all that's doing is making you more frustrated, and that's no
fun, is it?) and just let them continue.  Like I said, perhaps some gem
will come out of the discussion - perhaps not.  Without a time machine,
there's no way to tell where the discussion might lead.

>> Yelling at people doesn't work.  Just let them bash it out in their
>> own time - sometimes, people have to learn things for themselves, they
>> have to make the mistakes that have already been made to have an
>> epiphany. Many people learn by *doing*, not by being told.  So let 'em.
> 
> A certain group of people her does not do that, unfortunately :-(

There's always someone who won't learn no matter what you do.  My current
job actually is technical education, dealing with identity management
solutions where politics are > 80% of the actual job.  Teaching technical
people how to navigate the corporate political landscape can be quite
interesting, and there are always those who don't get it.  Your "job" (if
you could call it that) isn't really to keep them from making those
mistakes, though.  I find that many communities will police themselves
quite well if given half a chance, and it really lowers everyone's
stress/frustration level to leave the heavy moderating to the times it's
really needed (such as the circumstances where someone's slamming the
team, hell, I'll jump in and hit back for that as well, because you guys
do some damn fine work).  Personally, I find that letting online
communities police themselves as much as is reasonable (there always has
to be something to deal with spam/unacceptable behaviour/language/etc,
that's the nature of the beast) works the best because then the operators
don't draw fire as the "bad guys" (or whatever euphemism seems appropriate). 

>> Who knows, maybe the 15th time, someone will have an idea that nobody
>> on the POV-Ray team has thought of.  I'm sure you'll be skeptical of
>> that statement/idea, though.  You only want discussions that - how did
>> you put it - "Contribute something of value".  But of course nobody but
>> you knows what you consider valuable, so the only way to find it is to
>> be subjected to your anger and frustration.  Quite frankly, that's a
>> great way to drive users away from the POV-Ray project (again,
>> BTDTGTTS).
> 
> As repeated numerous times now, and not only by me, there is exactly no
> interested in plug-ins, even if discussed a 20th time.  If that i the
> only suggestion people have that would be really sad.

If it's a springboard for another idea that is considered feasible,
though, then the discussion had merit, no?

>> It's a shame that there are those who would rather not have open
>> discussion about things relating to the software, regardless of the
>> value they perceive in the discussions.
> 
> Again, you are completely missing the difference between repeating a
> discussion and discussing a new idea.  New ideas are really welcome!!!

That is good to know.

> Yet, that requires first getting an idea if something was not already
> suggested before.  Like in real-life, you would not walk into a meeting
> and repeat the ideas of last year.  All you would be told is to read
> memo xyz and if you would not do so and come again with the same idea
> the next week and the week after that, eventually you would have a hard
> time not being perceived as a total joke by your coworkers, friends or
> whoever you are meeting with.  Yet, for some strange reason a behavior
> that is considered totally inappropriate in real-life seems to be
> expected to be accepted by everybody when a small minority insists on
> it.

Well, in my experience in US corporate culture, sometimes an idea that was
rejected in one year is usable the following year - but there is a
significant difference in the corporate culture environments that you work
in and that I work in, I will grant you that.  The company I work for
acquired a German company last year, and I see a lot of the exact same
types of discussions going on internally as well.  A very good friend of
mine in the United Kingdom actually made the observation that in the US,
everyone's opinion is valued - sometimes to an extreme fault - but over
here, we're perhaps too eager for more opinions on a matter than are
relevant.  German corporations tend more towards the approach you've taken
in this discussion - we've discussed it, the decision is made, let's move
on to something new.

Both approaches have their upsides and downsides.  If I might be so bold
as to suggest that as this discussion area is international by its very
nature and that the POV-Ray team is also international by its very nature,
that perhaps taking a step back from what you may perceive as a cultural
norm and see it from a broader - more global - perspective.  The reality
is that the world is shrinking every single day, and those of us who will
succeed in business in the smaller world of tomorrow are the ones who can
step back from our own cultures (and it is a *multi-way* street, not just
two-way) and at least see things from others' points of view.

Myself, I've had to learn in just the last two years how to interact with
my German counterparts, my English counterparts, my Indian counterparts,
and my counterparts from across the United States.  Each culture has its
own way of handling things - the Germans, as I indicated, want decisions
made and never revisited; the Indians (and I mean India, not Native
Americans, just to be clear) want very precise directions given with no
ambiguity whatsoever - otherwise some of them will discuss a topic forever
and not write anything, just because they don't feel they *fully*
understand the requirement; the Americans want to get everyone's buy-in to
the solution and a reduction in conflict by making sure everyone's opinion
is heard.

Wow; I'll leave it at that, since this really isn't relevant to the
software per se, just this discussion about the software.  More than happy
to continue either in the off-topic group or via e-mail - just visit my
website (hendersj.dyndns.org) and drop me feedback, and that'll hit my
mailbox. :-)

Jim


Post a reply to this message

From: Thorsten Froehlich
Subject: Re: Calling external Math functions from .dll or .so
Date: 14 Feb 2005 21:13:34
Message: <42115ace@news.povray.org>
Lance Birch wrote:
> You want posts to contribute something, well perhaps it's time you started
> leading by example.  Stop feeding the trolls and get back to the actual topic,

I have to admit you are right :-(

	Thorsten


Post a reply to this message

From: ABX
Subject: Re: Calling external Math functions from .dll or .so
Date: 15 Feb 2005 03:08:03
Message: <m6a311dmf1bkv3fnsi5809qem3orfvher5@4ax.com>
On 14 Feb 2005 18:42:37 -0500, "Rafal 'Raf256' Maj" <spa### [at] raf256com> wrote:
> > see images like
> > http://news.povray.org/povray.binaries.images/attachment/%3C39e71e97%40
> > news.povray.org%3E/escher4.jpg which are completly procedural
>
> _Ofcourse_ I know this. But some sophisticated functiosn that use flow 
> control, if's, loops, and so on - are realy hard/uncomfortable to write 
> without a language at least simmilar to

Conditions and loops are already possible within functions engine while I do
not say it is perfect I think it is enough to be base for further development
for delivering custom shaders, IMO.

Kind reminder: you did not answered and enumerated these raytracers which does
support portable plugins in form of shared libraries compiled to machine code
and support MacOS, MacOS X, *nix flavors and Windowses. Please respect the
rules of discussion and at least answer that you are unable to provide such
names.

> Pascal (oryginal, like 3.0 - 5.0

This is offtopic but remember that originally Niklaus Wirth developed Pascal
in 1970. It wasn't versioned with 3.0 or 5.0 numbers IIRC.

> Pascal Compiler)

Considering number of available compilers it is far from obvious what you mean
http://www.ifrance.com/franck-pissotte/pascaland/pascall.htm

> or some basic C.

As you already know POV-Ray SDL is very similar to C with #directives and
curly brackets. There is no need to reinventing the wheel, IMO.

ABX


Post a reply to this message

From: Warp
Subject: Re: Calling external Math functions from .dll or .so
Date: 15 Feb 2005 08:11:22
Message: <4211f4fa@news.povray.org>
Rafal 'Raf256' Maj <spa### [at] raf256com> wrote:
> Indeed, lets stop adding any interesting new rewolutionary futures, since 
> Pov-RAY already left all other renderers far-behind.

  Perhaps *you* will be willing to explain us where exactly the plugins
should be called in the POV-Ray core, what would they do, and how they
will be better than having a strong scripting language?

  All this thread seems to revolve around the same theme: Plugins are cool,
plugins are great, plugins are omnipotent, I want plugins. Many people
seem to think that plugins are some magic code which can insert itself
in any place inside an existing binary and do whatever it wants freely.
  Well, they are not. If you want plugins you'll have to explain where
exactly should the core code call the plugin and which features the
plugin will be able to reimplement. (Also explaining why only those
features and not other ones would be cool.)

  The original suggestion was that there could be a plugin system in
the user-defined function feature of the SDL (that is, where you write
"#declare Something = function(...) { ... }" some dll function could
be called.
  My question is why. That would be extremely awkward and the feature
would only be available for a small percentage of people. It's specially
awkward because there are much better solutions to the same thing
(enhancing the SDL for instance). Putting a dll plugin support there
would only cause more problems that it's worth, and its usefulness
would be extremely limited (after all, an SDL user-defined function
is just a function which takes some numerical parameters and returns
a numerical value; its use is very limited, certainly not worth the
trouble, specially when there are much better solutions to the same
thing).

  A plugin system is not the answer. A better scripting language is.

-- 
plane{-x+y,-1pigment{bozo color_map{[0rgb x][1rgb x+y]}turbulence 1}}
sphere{0,2pigment{rgbt 1}interior{media{emission 1density{spherical
density_map{[0rgb 0][.5rgb<1,.5>][1rgb 1]}turbulence.9}}}scale
<1,1,3>hollow}text{ttf"timrom""Warp".1,0translate<-1,-.1,2>}//  - Warp -


Post a reply to this message

From: Warp
Subject: Re: Calling external Math functions from .dll or .so
Date: 15 Feb 2005 08:28:25
Message: <4211f8f9@news.povray.org>
Rafal 'Raf256' Maj <spa### [at] raf256com> wrote:
> And this is why Closed Source (as in "closed discussino, closed wish lists, 
> closed bugzilla archives) is usually beter then opensource.

  One interesting example from real life comes to my mind:

  It took something like 3 or 4 years for Mozilla to implement a feature
which could be used to disallow javascript from disabling the context
menu (ie. the menu which pops with the right mouse button) since it
was first suggested.
  Why? If you followed even a bit the discussion going on, you would
have noticed that it was an endless discussion with people fighting
each other's opinions. It was almost like a war which lasted for years.
Some people strongly opposed the idea (for whatever obscure reasons) while
others tried to defend it, and the ranting went on and on for years.
Naturally it didn't make any sense at all (why would it be any bad to
allow the user to do whatever he wants? if he wants to disallow javascripts
from disabling the context menu, why shouldn't the user be able to do
that?)
  Well, at last someone just added the feature to Mozilla and now it's
there, finally ending the stupid war.

  And this was just one single minor feature.

  I'm quite certain that if there was a public discussion group about
the new scripting language of POV-Ray, it would get filled with tousands
and thousands of articles and megabytes and megabytes of text with people
just fighting each other in stupid endless wars about what features are
or are not ok. The end result will most probably be that those thousands
of articles will have no effect whatsoever on whether the feature will
be implemented or not, so why not save everyone the trouble?
  No-one participated in the developement of the current SDL, and I don't
see too many people complaining about it (even though there should be
more than enough reason for that).

-- 
#macro N(D)#if(D>99)cylinder{M()#local D=div(D,104);M().5,2pigment{rgb M()}}
N(D)#end#end#macro M()<mod(D,13)-6mod(div(D,13)8)-3,10>#end blob{
N(11117333955)N(4254934330)N(3900569407)N(7382340)N(3358)N(970)}//  - Warp -


Post a reply to this message

From: Jim Charter
Subject: Re: Calling external Math functions from .dll or .so
Date: 15 Feb 2005 08:42:13
Message: <4211fc35$1@news.povray.org>
Thankyou.


Post a reply to this message

From: Rafal 'Raf256' Maj
Subject: Re: Calling external Math functions from .dll or .so
Date: 15 Feb 2005 10:33:26
Message: <Xns95FEA8579DF99raf256com@203.29.75.35>
war### [at] tagpovrayorg news:4211f4fa@news.povray.org

>   A plugin system is not the answer. A better scripting language is.

If (_if_) I will have time I will try to write small draft/RFD of my idea 
of such plugins/shaders.

-- 
http://www.raf256.com/3d/
Rafal Maj 'Raf256', home page - http://www.raf256.com/me/
Computer Graphics


Post a reply to this message

From: Rafal 'Raf256' Maj
Subject: Re: Calling external Math functions from .dll or .so
Date: 15 Feb 2005 10:38:38
Message: <Xns95FEA93A55A19raf256com@203.29.75.35>
war### [at] tagpovrayorg news:4211f8f9@news.povray.org

>  Why? If you followed even a bit the discussion going on, you would
> have noticed that it was an endless discussion with people fighting
> each other's opinions. It was almost like a war which lasted for years.

IMHO each future that can be used (but dont have to be used / can be 
disabled) do not create any problems - since it will be good for "both 
sides".

Plugins
- non-portable binary : solution distribute their code (some better SDL) 
and _optionaly_ compile it to have speedup
- some possible exploits and so on - give option in povray.ini to dissallow 
any use of pre-compiled plugins
- will not work on some platforms - give option to only interprete the 
shader, not compile it all, even in parsing stage

Release PovRAY+ pack with meny shaders, objects, textures, bitmaps
- but it would "kill" download servers - then rely on re-distributing as 
stated in licence
- but not everyone need it - give both povray-full and povray-light 
download options 

and so on.



-- 
http://www.raf256.com/3d/
Rafal Maj 'Raf256', home page - http://www.raf256.com/me/
Computer Graphics


Post a reply to this message

From: Warp
Subject: Re: Calling external Math functions from .dll or .so
Date: 15 Feb 2005 11:06:54
Message: <42121e1e@news.povray.org>
Rafal 'Raf256' Maj <spa### [at] raf256com> wrote:
> Plugins
> - non-portable binary : solution distribute their code (some better SDL) 
> and _optionaly_ compile it to have speedup
> - some possible exploits and so on - give option in povray.ini to dissallow 
> any use of pre-compiled plugins
> - will not work on some platforms - give option to only interprete the 
> shader, not compile it all, even in parsing stage

  I wonder if you understand what a plugin is.

  What you are describing above is basically just the same thing as the
#include files of the current SDL being distributed out there are
(except for support for compilation to bytecode, which in itself has
nothing to do with plugins).
  What you are describing above is basically a library written in the
same scripting language as the native POV-Ray scripting language.

  While one could argue that's also a "plugin", it's not the same thing
as the dll plugins in most windows software.
  A dll plugin would be written in C++ (or C) and would need to be
compiled with a C++ compiler. POV-Ray itself couldn't compile these
plugins unless it had a full-fledged C++ compiler inside it (which
doesn't make sense, of course). In fact, it doesn't really matter
which language the plugin is originally written in, what matters is
the end result: A dll containing native machine code with a certain
structure.

  While one could call an #include file a "plugin", I would call it
a library, not a plugin. Even if a future version of POV-Ray with a
much more elaborated and powerful scripting language (supporting eg.

not plugins (in the same sense as dll plugins are).

  The correct solution is to create a scripting language for POV-Ray
as its main SDL which allows making the things which are not currently
possible. Requiring users to know C++ and have a C++ compiler in order
to create platform-specific dlls is not the answer.

-- 
#macro N(D)#if(D>99)cylinder{M()#local D=div(D,104);M().5,2pigment{rgb M()}}
N(D)#end#end#macro M()<mod(D,13)-6mod(div(D,13)8)-3,10>#end blob{
N(11117333955)N(4254934330)N(3900569407)N(7382340)N(3358)N(970)}//  - Warp -


Post a reply to this message

From: ABX
Subject: Re: Calling external Math functions from .dll or .so
Date: 15 Feb 2005 11:18:08
Message: <hd7411hv5mm9bair56pgc4j0g4qd2m9i3i@4ax.com>
On 15 Feb 2005 10:38:38 -0500, "Rafal 'Raf256' Maj" <spa### [at] raf256com> wrote:
> Plugins

Can I ask you about writing in points in shortest possible words advantages
and disadvantages of using plugins including what needs to be done or added to
the current state of the sources. Something like:

  advantages:
    - custom patterns
    - portable when in bytecode
  disadvantages:
    - additional packages
    - not portable when precompiled

as many as possible but as short as possible. 3-4 words per entry without
elaboration.

ABX


Post a reply to this message

<<< Previous 10 Messages Goto Latest 10 Messages Next 10 Messages >>>

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