sentence: programming languages with printf ampl awk ( via sprintf ) bourne shell ( sh ) and derivatives such as korn shell ( ksh ) , bourne again shell ( bash ) , or z shell ( zsh ) c c++ ( also provides overloaded shift operators and manipulators as an alternative for formatted output - see iostream and iomanip ) objective-c clojure common lisp d f# gnu mathprog gnu octave g ( labview ) go haskell j java ( since version 1.5 ) clojure scala lua ( string .