=head1 TITLE enhanced groups in pack/unpack =head1 VERSION Maintainer: Ilya Zakharevich Date: 16 September 2000 Mailing List: perl6-language-data@perl.org Number: 248 Version: 1 Status: Developing =head1 ABSTRACT This RFC makes pack/unpack builtins able to handle non-flat lists. Four additional action-types in TEMPLATES cover most paradigms in binary storage of data: data groups, required group headers, position-specific "named" data, arbitrary-order fields. =head1 DESCRIPTION Currently pack() encodes data supplied in a flat list, and unpack() extracts data into a flat list. This proposal introduces I in TEMPLATES which allow to handle more complicated structured data. A I is introduced by a type C<'g'> followed by matched parentheses. =over =item C behaves the same as the C<(TEMPLATE)>-group. (Syntactic sugar, optional); =item C "lookahead". On unpack(): stores a position in the string, extracts some substring using C