[cad-linux] Re: executable data

  • From: Eric Wilhelm <ewilhelm@xxxxxxxxxxxxx>
  • To: cad-linux@xxxxxxxxxxxxx
  • Date: Tue, 16 Sep 2003 17:32:37 -0500

> The following was supposedly scribed by
> Bob Mitchel
> on Tuesday 16 September 2003 04:16 pm:

>There's been some discussion of having text-only files
>in the data tree... I'm not entirely sure I agree with
>this.  I think it would be bad to have executables
>*without* their source code, but keeping the
>executables around isn't a bad idea.  

Before raising a lot of concerns about binary vs text data and executables and 
permissions, think about the consequences of designing a compiled binary or 
any other sort of code into the system as part of the model (as opposed to 
part of the program which is supposed to be in charge of the model.)

If parametric modelers are going to use this system, they would have their own 
method of recalculating the data.  I think this would best be based on a 
computer-algebra syntax, which would self-document the relationships and 
allow a simple parse/evaluate to create the regenerated info.

This would be totally portable, and your model would make more sense 10 years 
down the road (as well as possibly a couple of weeks after setting up the 
relationships.)

I've been doing quite a bit of thinking about this and have concluded (for 
now) that the most flexible and powerful approach is to let the data-storage 
and formatting mechanism remain completely separate from the geometry 
manipulation mechanisms.  Maybe we need to come up with a spec / method / 
library for the back-end and another for the front-end.

The front-end in this case is still the back-end of something else.  While it 
seems that you would lose some performance with more levels of function 
calls, the same amount of operations would happen in the traditional, 
monolithic software but it would be more difficult to modify and reuse the 
code.

Think multiple levels of abstraction like openGL and other libraries which 
have proven themselves to be robust and flexible.

After that, if you still want to create a front-end that compiles and executes 
abitrary code to create model geometry, maybe there is a use for it.

--Eric

-- 
"When the going gets tough, most people quit."
                                        --Unknown


Other related posts: