Comparison of programming languages (strings)

This is an old revision of this page, as edited by 198.175.249.10 (talk) at 16:50, 20 March 2007 (Common variants). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Concatenation

Different languages use different symbols for the concatenation operator. Most languages use the "+" symbol, though several deviate from this norm.

Common variants

   +       ;; BASIC, C++, Pascal, Delphi, Javascript, Java, Python, Turing programming language, Ruby
   ++      ;; Haskell
   &       ;; Ada, AppleScript, VHDL, Visual Basic,  Excel
   .       ;; Perl (before version 6), PHP, and Maple (up to version 5)
   ~       ;; Perl 6 and D 
   ||      ;; Icon, Standard SQL, PL/I, Rexx, and Maple (from version 6)
   <>      ;; Mathematica 
   ..      ;; Lua
   ,       ;; J programming language
   ^       ;; OCaml and Standard ML
   //      ;; Fortran

Unique variants

  • Awk uses the empty string: two expressions adjacent to each other are concatenated. This is called Juxtaposition. Unix shells have a similar syntax. Rexx uses this syntax for concatenation including an intervening space.
  • C allows juxtaposition for string literals, however, for strings stored as character arrays, the strcat function must be used.
  • MATLAB and Octave use the syntax "[x y]" to concatenate x and y.
  • Visual Basic Versions 1 to 6 can also use the "+" sign but, this leads to ambiguity if a string representing a number and a number is added together.
  • Microsoft Excel allows both "&" and the function "=CONCATENATE(X,Y)".

String literals

This section compares styles for declaring a string literal.

Quoted raw

   
    <![CDATA[ TheQuickBrownFox ]]> ;; CDATA section ;; XML
    

Quoted interpolated

Dual quoting

Multiple quoting

Unique quoting variants

   16HTheQuickBrownFox          ;; Hollerith notation                    ;; FORTRAN
   (indented with whitespace)   ;; Indented with whitespace and newlines ;; YAML