Hello,
I've been developing a compiler that will target Parrot for the last
couple of months. I have a question.
I've only been reading the list for a short time (1 - 1 1/2 months). I
was reading some of the past articles, but there's just so many of
them that I figure I might as well just ask the question directly.
Is there now, or will there be in the future, any way to call C/C++
library routines from within Parrot? For example, a mysql, pcre or
libcurl library. Either static or dynamic.
I haven't actually program using either PASM or PIR(?) yet, since I'm
still working on the details of my compiler, such as the grammar, etc;
but I'm curious if this feature is available as this is something I
have to take into consideration right now.
Thanks
$vlad.f()
---------- Forwarded message ----------
To: MrJoltCola <mrjoltcola@no-spam>
On Fri, 25 Feb 2005 13:40:15 -0500, MrJoltCola
<mrjoltcola@no-spam> wrote:
> At 01:27 PM 2/25/2005, vlad florentino wrote:
> >Is there now, or will there be in the future, any way to call C/C++
> >library routines from within Parrot? For example, a mysql, pcre or
> >libcurl library. Either static or dynamic.
>
> C yes. C shares objects are dynamically loadable by Parrot.
> C++? Not directly, you'll need to wrap any C++ APIs in "extern C" stubs
> to get at them from Parrot and make sure you stuff any object pointers into
> a PMC. It has been done, an example is the C++ Qt Toolkit.
>
> -Melvin
>
>
Wow, that's great!
Are there any examples showing how one can call C routines in Parrot?
$vlad.f()
http://cvs.perl.org/viewcvs/cvs-public/parrot/examples/pni/
has examples for QT, sdl, and the win32 API.
Regards.
vlad florentino writes:
> Wow, that's great!
>
> Are there any examples showing how one can call C routines in Parrot?
>
> $vlad.f()
On Fri, 2005-02-25 at 14:18 -0500, Will Coleda wrote:
> http://cvs.perl.org/viewcvs/cvs-public/parrot/examples/pni/
>
> has examples for QT, sdl, and the win32 API.
The actual NCI stuff (for SDL bindings, at least) is in:
http://cvs.perl.org/viewcvs/cvs-public/parrot/runtime/parrot/library/
-- c