Nick Glencross wrote:
>
> As mentioned on the list yesterday I started evaluating ffcall
> as a way of providing NCI functionality.
> 
>  http://www.haible.de/bruno/packages-ffcall.html
> 
> I actually really like the current NCI implementation, although
> it suffers from a large nci.c file and all the usable prototypes
> need to be specified at compile time in call_list.txt. Over time
> as more libraries become supported this list will quickly grow.

Here's a reference to the last time this thread came up:
 
http://groups.google.com/group/perl.perl6.internals/browse_frm/thread/8b1b5e
7e343ce3c4/

and a shortened URL forwarded version:
  http://ffcall-perl6-internals.notlong.com


Here's the tail end:

8. Dan Sugalski   Jan 12 2004, 12:49 pm

At 10:13 AM -0600 1/12/04, Garrett Goebel wrote: 
>
>Tim Bunce wrote: 
>>
>>  I see Dan says in his blog "Yeah, I know, we should use libffi, and 
>>  we may as a fallback, if we don't just give in and build up the 
>>  function headers everywhere." 
>>
>>  I'm not familiar with libffi so this may be a dumb question, 
>>  but why the apparent reluctance to use it? 
>
>The reluctance probably doesn't have anything to do with its very liberal 
>licensing terms... 

Nope. The two issues were portability and the prospect of a library 
which isn't ours that we'd need to maintain if we were distributing 
it. 

I'm fine with someone taking a stab at teaching Configure to probe 
for it on platforms that don't have the JIT building up function 
headers already, and teaching nci.c to use it in that case. (As long 
as the order of preference is "JIT building functions", "libffi", 
"current hackish NCI scheme" is maintained) 
-- 
                                         Dan 

 
9. Garrett Goebel   Jan 12 2004, 1:48 pm

Tim Bunce wrote: 
> > Tim Bunce wrote: 
> >
> > I see Dan says in his blog "Yeah, I know, we should use libffi,
> > and we may as a fallback, if we don't just give in and build up
> > the function headers everywhere." 
> >
> > I'm not familiar with libffi so this may be a dumb question, 
> > but why the apparent reluctance to use it? 
> >
>
> In http://www.nntp.perl.org/group/perl.perl6.internals/253 I see 
> Garrett Goebel quotes Bruno Haible saying "I could agree to the 
> LGPL license. Perl could then use ffcall as a shared library 
> (linked or via dlopen)" 
>
> And I see http://www.parrotcode.org/docs/faq.pod.html says 
> "Code accepted into the core interpreter must fall under the same 
> terms as parrot. Library code (for example the ICU library we're 
> using for Unicode) we link into the interpreter can be covered by 
> other licenses so long as their terms don't prohibit this." 
>
> So it seems there's no licensing issue preventing parrot using libffi. 
>
> Is that right? 
> Are there any others? 

My bad. In my comments on Dan's blog, I confused libffi with ffcall. Both do

roughly the same thing... 

The libffi was originally produced by Cygnus, but is now part of GCC. 
  http://sources.redhat.com/libffi/ 
  http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libffi/LICENSE 

ffcall was produced by Bruno Haibel as part of his CLISP package. 
  http://www.haible.de/bruno/packages-ffcall.html 

ffcall used to be considered more mature/stable, but since libffi was 
included in GCC the general impression true or not is that libffi is more 
actively maintained. From mailing lists and csv logs, it looks like both are

actively maintained... 

 
10. Tim Bunce   Jan 13 2004, 9:49 am

And since it seems both are usable for parrot from a licencing 
perspective we're free to use whichever suits best on a given 
platform - assuming someone implements the relevant interface code. 

Tim. 

 
--
Garrett Goebel
IS Development Specialist

ScriptPro                   Direct: 913.403.5261
5828 Reeds Road               Main: 913.384.1008
Mission, KS 66202              Fax: 913.384.2180
www.scriptpro.com          garrett at scriptpro dot com

Reply via email to