Tom Lane wrote: > "Karen Hill" <karen_hill22@xxxxxxxxx> writes: > > I did a quick google and someone mentioned that input and output > > functions need to be written in C. Is that still the case? > > Yeah, pretty much. The main problem is that such functions need to deal > with whatever physical on-disk format you've chosen for the datatype, > and most of our PLs don't offer bit-level memory access. Is bit-level memory access the actual problem? I would think that at least PL/Perl can offer that pretty easily using pack() or something like that. Not that I've actually tried using it. But I think the main problem may be getting our calling conventions right. I mean, how would you do a PG_GETARG_BOOL() or stuff like that? Maybe if we offered PG_GETARG_DATUM and PG_RETURN_DATUM equivalents in PL/Perl we could offer I/O functions there. -- Alvaro Herrera http://www.CommandPrompt.com/ The PostgreSQL Company - Command Prompt, Inc.