『プログラミング言語「C++」は嫌われる』という内容の記事は、ちょくちょく目にします。
I often see articles that say, "The programming language 'C++' is hated".
しかし、大きな本屋に行くと、C/C++の本の数が圧倒的です。
However, if you go to a large bookstore, you can see the number of C/C++ books is overwhelming.
下手すると、プログラム言語関連の半分が、C/C++の本だったりします。
Half of the books related to programming languages are often C/C++ books.
まあ、C/C++が選ばれる理由は、「ハードウェアの性能を最大限引き出す、低レベルのインターフェース」
Well, C/C++ is chosen because of its "low-level interface that maximizes hardware performance."
であり、
and,
C/C++が嫌われる理由は、「メモリリークが引き起こす、システムダウンへの恐怖」
C/C++ is disliked because of the "fear of system downtime caused by memory leaks."
でしょう。
I think that.
ガーベージコレクションが実装されている言語は、当然のことながら、実行速度が遅くなります。
Languages in which garbage collection is implemented are naturally slower to execute.
そういう面倒なことを気にせずに、平気で実装できる乱暴さがあるからこそ、C/C++は現在も最速の言語として君臨し続けているのです。
It is precisely because of the wildness that can be implemented with impunity, without worrying about such troublesome things, that C/C++ continues to reign as the fastest language to this day.
-----
私、米国赴任中に、現地で発生していたメモリーリークの問題を、「商用ライブラリ」の中に発見して、この回避方法を見つけました。
While on assignment in the U.S., I found a workaround for this problem of memory leaks that I was experiencing locally in a "commercial library".
それをミーティングの時に発表して、メンバーから絶賛された(と思う)のを覚えています。
I remember presenting it at a meeting and receiving (I think) rave reviews from the members.
というか、『この国のエンジニアは、メモリリークを容認するのか』とビックリしたのを覚えています。
I remember being surprised that 'engineers in this country tolerate memory leaks.
ちなみに、当時の弊社では、メモリリークを起こす実装をしたエンジニアは、回りの人間から『バカ、アホ、死ね』と言われて、頭(こうべ)を垂れ続けなければなりませんでした。
Incidentally, at our company at that time, the engineer who implemented memory leak had to keep hanging his head, with hearing "you are an idiot, a moron, and should die".
-----
「GoogleはC++の仕組みを土台として、C++と互換性のあるCarbonを開発する」と聞きました。
I heard that "Google will use the C++ mechanism as a foundation to develop Carbon, which is compatible with C++."
Googleのアホー!
"Google Idiot"
そんなもんいらんわー!
"I don't want that! "
そんなもん開発するくらいなら、
Instead of developing something like that, release an extended version of C++ from the get-go! with
(1)スケーラブル軽量スレッド(goroutineのこと)、と
(1) Scalable lightweight threads (goroutine's), and
(2)チャネルを追加実装した、
(2) Additional channels are implemented
最初から拡張版のC++をリリースしろ!
と、言いたい。
I want to say that.
ちなみに、メモリリークは、『間抜けなエンジニアの証明』で、私はO.K.です。
By the way, I am O.K that "memory leaks" is 'dumb engineer proof'"
ガーベージコレクションが走ると、正確なプログラムの実行時間が分からなくなるからです。
Garbage collection is not a good idea because it makes it impossible to know the exact program execution time.
-----
まあ、どっちみち、私は、Golangを人生最後のプログラム言語とする予定なので、まあ、今からどんな言語が出てこようとも構わないのですが。
Well, anyway, I plan to make Golang the last programming language of my life, so, well, I don't care what language comes out now.