Many C++ users quite reasonably don't want to become C++ experts—they are experts in their own fields (e.g., physicists, graphics specialists, or hardware engineers) who use C++.
多くの C++ 使いは、全く当然のことながら、C++ の専門家になりたいわけではない。
彼らは自分自身の分野の専門家 (例えば、物理学者であったり、グラフィックスの専門家であったり、ハードウェア技術者であったり) で、C++ を使っているだけなのだ。
重要なのは言語じゃない (スコア:4, すばらしい洞察)
Re:重要なのは言語じゃない (スコア:2, すばらしい洞察)
元々の話は「化学専攻の学生のためのプログラミング入門」という話ではありませんか?
(教え|教わり)たいのが「プログラミング」なら「プログラミングの各種概念を教えられるなら何でも良い」という話になるでしょうが。
あるプログラミング言語設計者の言 [artima.com]によれば、
てなわけで、答えは「自分の業界で必要なものを学べ。 それはひょっとしたら Fortran かも知れない」というだけの話なのでは。
# 今時、粒子物理でも Fortran はあまりないと思うけどなぁ...
# 流体系の計算物理とかだとあったりします? > 識者
Re:重要なのは言語じゃない (スコア:2, 興味深い)
流体だとFortranともバリバリ現役です。
古くからあるソルバーの拡張はもちろんFORTRAN 77でやるしかないですから。
新しめのものでも、NAL/JAXAのUPACSやFlontFlow-redはFortran 9xですし、FlontFlow-blueはFORTRAN 77です。
理由としては、
が挙げられると思います。
結局、
と同様の構図です。
研究者としては、「ソルバーをC/C++/C#/JAVAで書きました」と言っても論文にはならないし、ソフトウェア会社としては、スクラッチから違う言語で書き直してテストをする分の工数にお金はもらえないし、ユーザはそこにあるものを使用するだけです。
Re:重要なのは言語じゃない (スコア:2, 興味深い)
残念ながら日本では流体でもまだまだFortran、それもF77です。
彼らの大半はComputational Fluid Dynamicsをやっていながら、
驚くほどに計算機やその関連技術には興味を持たないのです。
コードは例えば"COMMON文で変数は実質すべてグローバル"、
といったとても他人には読めないものだったりします。
中の人なのでAC。
計算するのが目的じゃないんだから (スコア:0)
CFDの研究者なら、プログラムの実装は自身の考え方を証明する手段であって目的じゃないでしょ。論文に数式は書いても、ソースリスト付けるわけじゃないんだし。時間を掛けて書いたエレガントな実装よりも、短時間で書けて力技でも間違いのない結果が出る方が重要。
とはいえ、難読性の高いソースだと、その研究を引き継いだり、参照したりする人が苦労する訳だが。
QuickBasicで書かれたプログラムで卒論書いた流体出身のAC。