web-dev-qa-db-ja.com

文字列連結の「ドット」演算子の語源は何ですか?

一部の言語には.文字列連結の演算子。それをサポートする私が見つけた最も古い言語はPerlです。 Perlが最初に使用したのですか?なぜ選ばれたのですか?

3
Tyler Holien

単一の英数字以外の空白以外のASCII演算子の文字を使用する場合、実際にはそれほど多くはありません。いくつかの代替選択肢しか表示されません:!~#,、および$。これらのうち、.および,のみに到達できます。  米国のキーボードでは、#はコメント文字です。コンマはある意味意味がありますが、CおよびCのような言語ではすでに別の目的で使用されており、多くのPerlプログラマーも慣れ親しんでいるため、Perlでも同じ意味を持ちます。

これはあなたに点だけを残します。真ん中のドット(・)は、関数の合成を示すために数学で使用されていることに注意してください(HaskellはASCIIドットをその近似として使用します)。これは、連結に関連するようなものです。

実際、数学では連結の標準的な演算子記号はありません。いくつかの提案は、二重プラス(Haskellは連結に++を使用)または眉をひそめているです。

一部の言語では、連結に+を使用しますが、これはひどい選択です。これは、連結には、加算のような操作に通常関連付けられるプロパティのいくつかが欠けているためです。最も重要なことは、連結は非可換です。

4
Jörg W Mittag