Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW
 
PerlMonks  

Re: Disputation of g0n on the power and efficacy of XS

by chromatic (Archbishop)
on Apr 20, 2005 at 17:59 UTC ( [id://449695]=note: print w/replies, xml ) Need Help??


in reply to Disputation of g0n on the power and efficacy of XS

Perl 6 uses Parrot, which has NCI, so it doesn't really have this problem. (NCI doesn't require that you have a C compiler installed to link against C shared libraries, anyway. C++ might be more complex; I don't know enough about its ABI to say.) It's even easier if your platform as JIT support.

It's possible to solve this problem in Perl 5 as well, though I haven't had time to work on it as much. See P5NCI.

Replies are listed 'Best First'.
Re^2: Disputation of g0n on the power and efficacy of XS
by TimToady (Parson) on Apr 20, 2005 at 20:18 UTC
    That's one part of the solution--the part that deals with legacy libraries. The other part of the long-term solution is to make sure Perl 6 is a language in which you can express low-level concepts so you don't have to drop into C just for performance. ParrotOS, here we come... :-)
Re^2: Disputation of g0n on the power and efficacy of XS
by salva (Canon) on Apr 21, 2005 at 09:14 UTC
    C++ might be more complex; I don't know enough about its ABI to say

    there is no such thing as an standard C++ ABI, it's compiler specific!

      Not only is it compiler specific the C++ ABI is usually very fragile. The good news is that the GCC team has done some effort to alleviate the fragility of the ABI on C++

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://449695]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others exploiting the Monastery: (4)
As of 2024-03-29 10:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found