a # 1 60 R ' v#m2v m ' a # a,[1] ' v#-1U(,`O1,V\'' ''^=`Om)/,m,`c`r ' a # a,[1] ' $0 ' a # a,[1] '"m2v - compress character matrix ' a # a,[1] '"from ''the apl handbook of techniques'' copyright 1978, ibm. ' a # a,[1] '"these complementary functions allow two-way conversion ' a # a,[1] '"between character matrices and character vectors. ' a # a,[1] '"m2v: converts a character matrix m to a character vector v.' a # a,[1] '" each row of m, with trailing blanks omitted, becomes ' a # a,[1] '" a ''line'' in v, ended by a carriage return. ' a # a,[1] '"v2m: converts a character vector v to a character matrix m.' a # a,[1] '" each ''line'' (a character string ending in a carriage ' a # a,[1] '" return) becomes a row of m, with padding as required. ' a # a,[1] '"both v and m will appear the same when displayed, but the ' a # a,[1] '"vector representation is usually more economical in ' a # a,[1] '"storage. the global `c`r must exist in workspace (see ' a # a,[1] '"Gtcc). ' Lfx a