Why are there all these strange stumbling blocks in Julia?

Not really trying to pile on, but I just got curious so I compiled a list of string concatenation operators across a bunch of languages. If any of these are incorrect, blame ChatGPT :slight_smile:

Some languages (C,, Lisp-y ones) do not have infix operators for string concatenation at all.

  • Maple uses ||
  • Mathematica and Gap use <>
  • Agda, Idris, Erlang, Haskell, Elm, Zig all use ++
  • F#, OCaml use ^
  • Ada, Nim use &
  • Fortran uses //
  • Lua has ..
  • Perl has .
  • Smalltalk has ,

And of course many popular languages use +, including C++, Python, Java, Go, Ruby, Typescript, Rust, Solidity, R, Swift etc.

So while it does seem to be true that Julia is a bit of an outlier in using specifically *, there are plenty of other examples of languages choosing to diverge from +.

10 Likes