I also like to write programs (I use a really nice language named Haskell). Do you thing I could get what I want if I write or translate typography functions to that language, and then write programs to generate documents?