Hello everybody, I'm about to rewrite major parts of one of my projects (currently written in C); because of that rewrite I'm thinking about using perl6 for the most parts, and write only the most performance sensitive parts in C.
I was just on #perl6, and got the tip to write a feature request for Rakudo*. So, what I would need: 1) Some way to get a single executable (ELF) from mixed-source. That's because of the startup speed - which is important, as this will be a commandline program, and be called often. It's ok (and will be needed) to load shared libraries; having bytecode in it is no problem, too. I think that most startup overhead is from reading/parsing the perl sources, and that's what I need to avoid. (I got the tip to look for pbc_to_exe.) 2) C structure usage. As this will handle a big amount of data (lower end 1M structures in a tree, with (on 32bit) each ~240 bytes in C) I'd like to use some kind of C structure for storage - as opposed to a hash. Well, in Perl5 there are some classes for structure storage and so on; I'd need some easy way to generate a class in Perl6 for these. It will get some other functions, too, but accessing the members should be fast, and so shouldn't be done with pack()/unpack(). 3) Calling C functions from the Perl6 sources. That would be no problem, I think ... and if my own (optimized) C functions are put in a shared object the linking is easily done, too. Is there some automated way to get the perl6/parrot translation code from C headers? If it takes a year for Perl6/Parrot/Rakudo to get there, I wouldn't mind ... because I'll have to re-write my code anyway. Although, in order to actually *write* that code, it would be nice to be able to test it, too ;-) Would you think that I should start now in Perl6, or that this will be a dead end? Regards, Phil -- Versioning your /etc, /home or even your whole installation? Try fsvs (fsvs.tigris.org)!