http://www.perlmonks.org?node_id=240802
User since: Mar 06, 2003 at 04:13 UTC (21 years ago)
Last here: Feb 20, 2005 at 17:59 UTC (19 years ago)
Experience: 354
Level:Scribe (6)
Writeups: 39
Location:Istanbul, Turkey
User's localtime: Mar 04, 2024 at 12:22 UTC
Scratchpad: None.
For this user:Search nodes
Watch for posts by this user

A Perl success story... As of May 2004 I started to hack the Ming-C dynamic SWF Output Library. Before this date, I had written a complex Perl wrapper around the Perl XS wrappers of Ming. Well, everything worked, if you ask me the programming tool I created on top of Ming-Perl is stronger than Macromedia Flash IDE.


Well, the programming was ugly though. Not elegant. In the original C library we had queues of, for example, shapes in a movie. But in the perl wrappers there was no access to these queues and stacks. So I just created those with Perl. Call it pragmatism. Who is going to improve his C and then write XS??


Then again... Perl came to the rescue with her mighty API along with Inline::C. Then PM for giving advices such as

</code> ## -----------------------------------------------------
SWFMovie movie = newSWFMovie();
SV* rv; HV* stash;
HV* thv = (HV*)sv_2mortal((SV*)newHV());
SV* sv = newSViv((IV)movie);
sv_magic((SV*)thv, sv,PERL_MAGIC_ext , "Movie", 5);
SvSETMAGIC((SV*)thv);


rv = newRV((SV*)thv);
stash = gv_stashpv("SWFMing::Movie", 1);
return sv_bless(rv, stash);
## ------------------------------------------------------
</code>

Indeed, what a magic!!

Perl6 is awaited impatiently...