mptable2alist [-H] key...
Accepts lists on standard input, and converts them to alists by using
the supplied keys as alist keys and the elements of the input list as
alist values, in the same order.
If -H is specified, then rather than using a list of keys on
the command line, the first list read from the input is used as the
list of keys.
A mismatch between the length of the list of keys and the length of
any input list causes an error to be signalled.
This useful for interoperating between mpcsv and mpsqlite.
Examples
$ echo '(1 2)' | mptable2alist a b
((a . 1) (b . 2))
echo '(a b) (1 2)' | mptable2alist -H
((a . 1) (b . 2))
$ ls -l *.scm | \
mpre '(seq (=> perms (= 10 any)) (* space) (=> linkcount integer) (* space) (=> user symbol) (* space) (=> group symbol) (* space) (=> size integer) (* space) (=> modtime symbol (* space) integer (* space) integer ":" integer) (* space) (=> name (* any)))' | \
mpalist2table -H name size user | mpcsv-write
name,size,user
magic-pipes.import.scm,2546,alaric
magic-pipes-runtime.import.scm,1923,alaric
magic-pipes-runtime.scm,14470,alaric
magic-pipes.scm,11906,alaric
mpalist2table.scm,1725,alaric
mpcsv-read.scm,1767,alaric
mpcsv-write.scm,1561,alaric
mpforeach.scm,932,alaric
mpjson-read.scm,838,alaric
mpjson-write.scm,661,alaric
mpls.scm,2247,alaric
mpre.scm,3019,alaric
mpsqlite.scm,11200,alaric
mptable2alist.scm,1588,alaric