アカウント名:
パスワード:
C#に置き換わり、C++は廃れてしまったりするのでしょうか
そんなことないと信じています。 というか、C#ってC++
30年どころか、100年たっても間違いなく生き残るであろう言語が少なくとも2つはあるでしょう。アセンブラとCです。
これらの言語の特異な点は、言語のsemanticsに面倒な実行時の支援処理や初期化が一切含まれていないことです。すなわち、自分で作ったエントリポイントにいきなり処理を飛ばしてもきちんと動作するわけです。これは計算機をbootさせるためには
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
皆さんもソースを読むときに、行と行の間を読むような気持ちで見てほしい -- あるハッカー
ISOってなんか意味あるの? (スコア:2, 興味深い)
よく分からないのですが、今のところ.NETフレームワーク以外に使用されるようなことはなさそうですし、標準でなくていいからMSのほうで勝手にやっていてくれという感じです。
ちなみに、
そんなことないと信じています。
というか、C#ってC++
// Give me chocolates!
Re:ISOってなんか意味あるの? (スコア:1)
ISOになると、各国政府がある程度の後押しをすることになってます。
例えば、おそらくJISにもなるでしょうし、情報処理技術者試験の
選択科目にもなるかもしれません。さらにひょっとしたら、中学や
高校の授業でとりあげられるかもしれません。
今すぐの影響は
100年たっても生き残る言語 (スコア:3, 興味深い)
30年どころか、100年たっても間違いなく生き残るであろう言語が少なくとも2つはあるでしょう。アセンブラとCです。
これらの言語の特異な点は、言語のsemanticsに面倒な実行時の支援処理や初期化が一切含まれていないことです。すなわち、自分で作ったエントリポイントにいきなり処理を飛ばしてもきちんと動作するわけです。これは計算機をbootさせるためには
Re:100年たっても生き残る言語 (スコア:1)
その意味で役に立つかどうかわかりませんが、アセンブラとCについての私の意見です。多くの項目が既出ですが、ご勘弁を。結論はbrake-handleさんの元コメント [srad.jp]と同じです。
アセンブラは、#183921 [srad.jp]で既に述べた通り、ノイマン型コンピュータの最下層のソフトウェアです。ノイマン型が存在する限りアセンブラはなくならないでしょう。
ただし、アセンブラをプログラミングで直接使うことは稀です。機種依存性が高く構文が貧弱なため、開発効率が低いからです。アセンブラで記述しなければならない状況の例として、特権命令等の特殊機械語命令を書く時、スタックポインタなど特定のレジスタにアクセスしなければならない時などがあります。また、アセンブラで記述した方が望ましい状況の例として、スタックポインタなどコンパイラが自動で使用するレジスタ変数が初期化されていない時(例えばIPL)などがあります。
アセンブラの主用途はコンパイラのバックエンドであり、言語としては「裏で生き続ける」という感じでしょうか。
Cは、「すべての構文要素が、単体で動作する機械語列に変換される」という特徴を持ちます。これがCの最大の利点です。OSやサポートライブラリが関与する操作は構文内には存在しません。OSが関与する多くのOSに共通する機能・一般的に便利な機能は、標準ライブラリとして構文とは独立に定義されています。この(そのまま機械語になるという)利点があるため、他の高級言語ではほとんど真似のできない、OSを記述すること・OSが存在しない状況で動作するプログラムを書くことなどが可能です(ただしC++でも可能ですよ)。
Cまたはアセンブラで記述できる状況であれば、より機種独立性の高いCを選択する方が合理的です。したがって、現在のCの地位を奪うものが現れない限り、Cは生き続けるでしょう。また、Cのほぼ上位互換言語でさらに付加機能も持っているC++が、今のところCを置き換えることに成功していないことから想像して、Cを駆逐する言語は現れ得ないように思います。アセンブラの生存理由と違ってこちらは明確な根拠じゃないですけどね。
以上の理由から、アセンブラとCはどちらも長い寿命を持つ、と思います。
# 細部はともかくとして、基本的には元々こういう話じゃないか
# と思っていましたがどうでしょう > brake-handleさん