17. The hardware product of claim 16 further comprising applying at least one template to the source code of the program to obtain one or more abstract coding styles; parsing the source code and extracting program elements; and computing an abstract coding style of each program element by applying a corresponding coding style template.
16. The hardware product of claim 15 wherein each coding style template is defined with a target syntax element type, one or more coding style placeholders, and a coding style-abstraction function.