About the use of language: it is impossible to sharpen a pencil with a blunt axe. It is equally vain to try to do it with ten blunt axes instead. -- Edsger W. Dijkstra
It is a double curl, piping from one to the other for the pull<->push of the data. But I'll wrap it in Perl for logging, error check, QC counts, etc, which will make it far more functional and trustworthy than he ever was.