Hatena::ブログ(Diary)

そんな話はいつでもできる このページをアンテナに追加 RSSフィード

ひま〜じ〜ん! きっと何者にもなれないfu7mu4が告げる!

2017-12-06 (throw-off ’(car-parts bottles cutlery))

[] すべての十分に複雑なシステム

後付けの、不完全な仕様バグを持ち、遅い、Common Lispの半分の実装を含んでいる。という言葉がありましたが、C++はいったいどこを目指しているのでしょうか?

この記事Lispアドベントカレンダーの6日目です。

C++17が先日リリースされました。そのときに同僚のC++erは constexpr で盛り上がってました。コンパイル時計算にあった制限がへってコンパイル時計算が楽に書けるようになったとさわいでいました。C++の黒魔術師レイトレーシングコンパイル時計算でやったとかなんとか。

コンパイル時計算といえば、どう考えてもLispの出番です。

がありますからね。

そういえば、boostというC++ライブラリContext switching with call/ccというものがありますが、説明の一行目は

callcc() is the C++ equivalent to Scheme's call/cc operator. It captures the current continuation (the rest of the computation; code after callcc()) and triggers a context switch.

などと、Schemeのcall/ccだと言っています。ふーん。でも、Coroutine2はcallccより前に(C++11)作られているんですよね。不思議ですね。それなら素直にLispで書けばいいのにと思ってしまいますね。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト

コメントを書くには、なぞなぞ認証に回答する必要があります。

トラックバック - http://d.hatena.ne.jp/fu7mu4/20171206/1512483058
Read the top page of this blog in English (Translated by Google) ここの文章は無断リンク(トラックバック含む)、無断引用可。トラックバックは無断で削除することもあります。 All code on this blog without some notation is released Creative Commons 0 v1 or MIT License.