Re: [perl #39715] [TODO] #39715 IMCC errors should throw Parrot exceptions
> > > > PARROT_API void *Parrot_compile_file(Parrot_Interp interpreter,char > > *fullname, String **error); > > I like this interface, except for the return value from Parrot_compile_file. > Are there other options, such as returning a Sub PMC? Chip and I have had a chat about other possible API's which could be added in future. Some e.g. 1. To throw Parrot exceptions instead of the String **error. 2. Possibly using Compiler PMC. (not sure on that yet) Your suggestion is good and I will keep in mind. These two functions are just a start for defining Compile API's. Programming languages should not talk directly to IMCC or any other low level compiler like IMCC and PASM. Thanks for your suggestion. Vishal
Re: [perl #39715] [TODO] #39715 IMCC errors should throw Parrot exceptions
On Wednesday 12 July 2006 22:02, Vishal Soni via RT wrote: > This patch also introduces a Parrot API for the calling programs to > compile the code. Currently pugs uses immc_compile() call into IMCC. > Ideally Pugs should not be communicating with IMCC but with Parrot. This > new API will try to hide IMCC/PASM compile details from programming > languages > > PARROT_API PMC *Parrot_compile_string(Parrot_Interp interpreter, STRING > *type, char *code, STRING **error); > > PARROT_API void *Parrot_compile_file(Parrot_Interp interpreter,char > *fullname, String **error); I like this interface, except for the return value from Parrot_compile_file. Are there other options, such as returning a Sub PMC? -- c