POV-Ray : Newsgroups : povray.binaries.images : Inversion : Re: Inversion Server Time
19 May 2024 01:19:03 EDT (-0400)
  Re: Inversion  
From: clipka
Date: 10 Apr 2016 23:36:36
Message: <570b1bc4@news.povray.org>
Am 11.04.2016 um 03:13 schrieb Anthony D. Baye:

> In the spirit of foresightedness... I'm going to shill for my idea of a plugin
> api again.  Because:

Your motion is moot, because:

> 1) New functionality should be added by new code, not modification of old,
> working code.

While that may be true in an ideal world, in reality sometimes (actually
more often than not) new code needs to be hooked up someplace nobody had
ever imagined that code might have to be hooked up there, so plugins are
always more limited than patches.

> 2) Adding a plugin to a directory and using dependency injection would be vastly
> preferable to recompiling multiple un-official versions.

Providing hooks to inject user-defined code wherever suitable is already
on the agenda. Except that there most likely won't be a plugin
directory; instead, such user-defined code would be written in a
next-generation scene description language, compiled to some virtual
machine bytecode, and uiltimately just-in-time-compiled to native code.

> In fact, I would imagine that large parts of the current codebase could be
> abstracted out as plugins (necessary core plugins, perhaps, but plugins)

Not yet.

> I would also imagine that this would be a task of more than somewhat Herculean
> porportions, so I completely understand resistance.

You're perfectly right as far as the proportions are concerned, but
you're off the mark concerning resistance. Herculean work is already
going on in the background.

> Unfortunately, I wouldn't know where to begin with such a thing, as I have a
> hard time following the patterns in the codebase. (to put it lightly)

Don't even try. The current codebase is still far too monolithic to bolt
on any way to inject user code. But we're working on it, slowly but
thoroughly.


Post a reply to this message

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