I\'ve been mulling over creating a language that would be extremely well suited to creation of DSLs, by allowing definitions of functions that are infix, postfix, prefix, or eve
Haskell has just what you're looking for.