アカウント名:
パスワード:
template がなかったらここまで生きてない感じがする。
自分は最初はCの構造体を使ってオブジェクト(クラス)をわかりやすく扱うためのプリプロセッサーハックだったのが注目されるにしたがい色々な人が集まりわけのかわらん巨大な集積物になった印象ですテンプレートやSTLはその最たるもの
そういう後付がなくlibcをラッピングした位の標準クラスライブラリーが整備されてればもっと使いやすかったんじゃないかと思ったりします※個人の感想です
むしろ始まりがプリプロセッサーだったからこそ、他の言語では動的(実行時)に解決するような要素をC++では静的(コンパイル時)に解決する土台が生まれたんだと理解しています。
>そういう後付がなくlibcをラッピングした位の標準クラスライブラリーが整備されてれば
それってglibのことでは……
現状は型とテンプレートでコンパイル時にどこまで出来るか、の実験言語に見える。が、もしシンプルにCを使い易くした言語だったら多分衰退してると思う。
>シンプルにCを使い易くした言語だったら多分衰退してるJava?
Javaは土台がc++じゃね?ios専用言語になりつつあるobjc とかかな
CとJavaはどちらかと言えば相互補完じゃない?用途的には少なくとも。
template metaprogrammingなんて、貧乏人のHaskellよね。絶妙な泥臭さがCの系譜らしさか
c#もそうだけどenumとtemplateの相性の悪さはちょっとどうにかしてほしい
C++は糞なところと洗練されたところが矛盾なく同居している不思議な言語ですC++は機能追加狂のストラウストラップが研究と称してやみくもに高機能にしたので糞になりましたが、彼は優秀なので洗練された糞になったのです
C++を糞という人はlinusをはじめ多いので様々な意見があるでしょうが、俺の意見ではは落とし穴が多いところが一番の糞ですね落とし穴というより地雷原ですねもうかなり前ですがExceptional C++を読んでうんざりしましたでもリソース管理や例外についての本質が書いてあり、あれを読めば中確率で魅了され俺もいっちょ何か書こうかという気に1ターンだけなれます
言語設計者には単純明快を旨とし機能の追加には慎重な人が多いのですが、ストラウストラップは真逆で実装のアイデアを思いついたら機能追加して整合性はそれから考える人ですそれはとても刺激的なのでC++は一定の人気を保っているのでしょう使う気がない、使うべきでなくてもウォッチする価値はある、そんな言語だと思っています
しかしC++標準委員会はラムダ式だのなんだのに手を出す前にテンプレートのエラーメッセージを何とかしようとは思わないのか。1文字タイプミスしただけで何千文字ものエラーメッセージが吐き出されるなんて正気の沙汰じゃないだろ。いや、そうなる理屈はわかるけどもさ、人の目で見てこんなのわかると思うか?っていう。
エラーメッセージをどう表示するかなんて、コンパイラ実装のほうの話だから、委員会に持ち込まれてもどうしようもなくね?世の中に、コンパイルエラーの規定された言語なんか存在するの?
形式手法的な観点からC++0xではConceptに大変期待をしていたのですが御覧の有様です。
テンプレートのせいでエラーメッセージがおおごとに
エラー発生元ちゃんと出してくれるようになったのってVisualStudioというかMSCだと2015辺りからだっけな・・
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
UNIXはただ死んだだけでなく、本当にひどい臭いを放ち始めている -- あるソフトウェアエンジニア
テンプレート大事 (スコア:0)
template がなかったらここまで生きてない感じがする。
Re: (スコア:0)
自分は
最初はCの構造体を使ってオブジェクト(クラス)をわかりやすく扱うためのプリプロセッサーハックだったのが
注目されるにしたがい色々な人が集まりわけのかわらん巨大な集積物になった印象です
テンプレートやSTLはその最たるもの
そういう後付がなくlibcをラッピングした位の標準クラスライブラリーが整備されてればもっと使いやすかったんじゃないかと思ったりします
※個人の感想です
Re:テンプレート大事 (スコア:2)
むしろ始まりがプリプロセッサーだったからこそ、他の言語では動的(実行時)に解決するような要素をC++では静的(コンパイル時)に解決する土台が生まれたんだと理解しています。
Re: (スコア:0)
>そういう後付がなくlibcをラッピングした位の標準クラスライブラリーが整備されてれば
それってglibのことでは……
Re: (スコア:0)
現状は型とテンプレートでコンパイル時にどこまで出来るか、の実験言語に見える。
が、もしシンプルにCを使い易くした言語だったら多分衰退してると思う。
Re: (スコア:0)
>シンプルにCを使い易くした言語だったら多分衰退してる
Java?
Re: (スコア:0)
Javaは土台がc++じゃね?
ios専用言語になりつつあるobjc とかかな
Re: (スコア:0)
CとJavaはどちらかと言えば相互補完じゃない?
用途的には少なくとも。
Re: (スコア:0)
template metaprogrammingなんて、貧乏人のHaskellよね。
絶妙な泥臭さがCの系譜らしさか
Re: (スコア:0)
c#もそうだけどenumとtemplateの相性の悪さはちょっとどうにかしてほしい
Re: (スコア:0)
C++は糞なところと洗練されたところが矛盾なく同居している不思議な言語です
C++は機能追加狂のストラウストラップが研究と称してやみくもに高機能にしたので糞になりましたが、彼は優秀なので洗練された糞になったのです
Re: (スコア:0)
C++を糞という人はlinusをはじめ多いので様々な意見があるでしょうが、俺の意見ではは落とし穴が多いところが一番の糞ですね
落とし穴というより地雷原ですね
もうかなり前ですがExceptional C++を読んでうんざりしました
でもリソース管理や例外についての本質が書いてあり、あれを読めば中確率で魅了され俺もいっちょ何か書こうかという気に1ターンだけなれます
言語設計者には単純明快を旨とし機能の追加には慎重な人が多いのですが、ストラウストラップは真逆で実装のアイデアを思いついたら機能追加して整合性はそれから考える人です
それはとても刺激的なのでC++は一定の人気を保っているのでしょう
使う気がない、使うべきでなくてもウォッチする価値はある、そんな言語だと思っています
Re: (スコア:0)
しかしC++標準委員会はラムダ式だのなんだのに手を出す前にテンプレートのエラーメッセージを何とかしようとは思わないのか。
1文字タイプミスしただけで何千文字ものエラーメッセージが吐き出されるなんて正気の沙汰じゃないだろ。
いや、そうなる理屈はわかるけどもさ、人の目で見てこんなのわかると思うか?っていう。
Re:テンプレート大事 (スコア:1)
エラーメッセージをどう表示するかなんて、コンパイラ実装のほうの話だから、委員会に持ち込まれてもどうしようもなくね?
世の中に、コンパイルエラーの規定された言語なんか存在するの?
Re: (スコア:0)
形式手法的な観点からC++0xではConceptに大変期待をしていたのですが御覧の有様です。
Re: (スコア:0)
テンプレートのせいでエラーメッセージがおおごとに
エラー発生元ちゃんと出してくれるようになったのってVisualStudioというかMSCだと2015辺りからだっけな・・