Hello, at the moment I try to port IO-subsystem from the current mem_sys_alloc/free to a PMC. The first patch in this direction is nearly finished.
I have some problems with the File-Descriptors in Parrot. Some of the operations in io.ops just take an INT File-Descriptor, which takes its infromation from a table in the Interpreter-Structure. This hinders garbage-collection of the IOs in this descriptor-table, because every interger can possibly be a File-Descriptor. Furthermore this table needs to be initialised early in the startup of parrot, at the moment even the memory-subsystem is not running when the IO is initialised. Therefor I propose: Remove the integer-valued File-Descriptors. The ParrotIO-objects (wrapped in PMCs) are the only way to access IO. The standard-descriptors stdin/stdout/stderr can be obtained by new ops get_stdin (out PMC) get_stdout (out PMC) get_stderr (out PMC) respectivly the macros PIO_STDIN(interpreter); PIO_STDOUT(interpreter); PIO_STDERR(interpreter); If communication with external file-descriptors is necessary then the PIO_fdopen function should be used, and the result is again a ParrotIO-object. bye boe -- Juergen Boemmels [EMAIL PROTECTED] Fachbereich Physik Tel: ++49-(0)631-205-2817 Universitaet Kaiserslautern Fax: ++49-(0)631-205-3906 PGP Key fingerprint = 9F 56 54 3D 45 C1 32 6F 23 F6 C7 2F 85 93 DD 47