>> t to sacrifice the unboxed representation for that. >> > > I guess others have pointed out why this isn't so easy. > > How about a syntax extension instead to turn a vector (| a, b, c |) > into { v0 = a; v1 = b; v2 = c }, and a standard type to solve the > module communication problem? I'm not sure if camlp4 will let you > define bracket lexemes like that. > > I use (^ ^) and {^ ^} as bracket for my bindlib library. The only defect is that you have to add spaces : ^)^))) should be written ^) ^) )) You can look at the code of bindlib for more info ... Cheers, Christophe > Rich. > >