On Thursday 28 Jan 2010, Curtis Olson wrote:
> On Thu, Jan 28, 2010 at 9:20 AM, Ron Jensen <w...@jentronics.com> 
wrote:
> > On Thu, 2010-01-28 at 09:24 +0000, James Turner wrote:
> > > On 28 Jan 2010, at 03:45, Ron Jensen wrote:
> > > > Here is a nasal function to determine if a frequency is a
> > > > localizer.
> >
> >  It
> >
> > > > accepts a frequency in megahertz and returns "1" if the
> > > > frequency is an ILS frequency.
> > > >
> > > >
> > > > var isILS=func(freq) {
> > > >  if(freq < 108.10) return 0;
> > > >  if(freq > 111.95) return 0;
> > > >  var bar=int((freq+0.001)*10)-int(freq)*10;
> > > >  return(bits.test(bar,0));
> > > > }
> > >
> > > A general observation - it'd be much better to request C++
> > > properties / native-nasal functions that implement such
> > > logic, rather than coding it up in Nasal (in each aircraft /
> > > instrument).
> >
> > Actually, I disagree with this statement, and it represents a
> > fundamental shift in attitude from the way I've seen
> > flightgear's development progressing over the past year or two.
> >
> > - Hard-coding every instrument in C++ instead of nasal means
> > only developers following/building the latest cvs head code get
> > to use whatever until the next release cycle.
> >
> > - Hard coding every instrument/flight control in C++ means my
> > WW-II storch (et.al.) is stuck with an autobrake functionality
> > it doesn't have nor need.
> >
> > - The pool of people with commit rights to C++ code is very,
> > very small.
>
> I think it boils down to the fact that we have two approaches
> that can accomplish the same thing.  The C/C++ approach offers
> high performance but there is a dependence on when the C/C++ code
> was added to FlightGear.  The Nasal approach offers fast
> prototyping, flexibility, and more (but not complete)
> independence from the C/C++ code.
>
> This means that for any particular case, there may be plenty to
> discuss and debate, and there may not be one single general
> purpose approach that works for everyone.
>
> Regards,
>
> Curt.

I think that as a general rule of thumb, Nasal is suitable for 
relatively low update rate aircraft specific stuff - let's say up 
to  10-20 Hz, but anything that has to run at a higher rate is 
better implemented in controllers & filters, or coded in C++.

LeeE

------------------------------------------------------------------------------
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
_______________________________________________
Flightgear-devel mailing list
Flightgear-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/flightgear-devel

Reply via email to