POV-Ray : Newsgroups : povray.programming : Extending #read, another option... : Re: Extending #read, another option... Server Time
8 Jul 2024 19:32:12 EDT (-0400)
  Re: Extending #read, another option...  
From: Christopher James Huff
Date: 13 May 2003 22:54:56
Message: <cjameshuff-DD79B8.22551413052003@netplex.aussie.org>
In article <web.3ec106212a3b3a27f73ed81b0@news.povray.org>,
 "Kitsune_e" <kit### [at] hotmailcom> wrote:

> I have read no articles on building plug-ins, I do not know specific
> methods.  It occures to me that C has generaly the same data structures
> accrossed multiple platforms (string int double etc).  C is ment to be
> portable, the compiler should handle any non-system specific code on any
> system.  I do not know if that is the case in practice though.

C source code is portable unless it uses something specific to a 
platform. Binary data structures and compiled code are not portable. And 
there is no standard way to dynamically load compiled code in the form 
of plugins, this requires platform-specific code. This is why patches 
are used instead of some plugin system...the plugin system would have to 
be rewritten for each platform. The plugins themselves would be a 
nightmare for support, with people trying to use plugins compiled for 
the wrong systems and potential for conflicts between plugins.

One possible compromise would be to use a platform-independant bytecode 
format, similar to Java class files. However, this has a speed penalty 
because the bytecode has to be interpreted instead of directly running 
machine code, and it would be easier to just load the files from the 
source code as is now done with include files. So, one form of plugin is 
impossible, the other is slower than the alternatives.

-- 
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.