Wikiの「Stacklessの方が10%速い」というのはどこから来たのかわかりませんが、これらのパフォーマンスの数値を測定しようとしたことは一度もありません。Stacklessがこれほど大きな違いを生み出すために何をしているのか考えられません。
Stacklessは、いくつかの組織的/政治的問題を抱えた素晴らしいツールです。
最初は歴史から来ています。Christian Tismerは、約10年前に最終的にStacklessになったものについて話し始めました。彼は自分が何を望んでいるのか考えていましたが、彼が何をしているのか、そしてなぜ人々がそれを使うべきなのかを説明するのに苦労しました。これは、コルーチンなどのアイデアに関するCSトレーニングが彼のバックグラウンドになかったことと、彼のプレゼンテーションとディスカッションが非常に実装指向であるためです。彼らの問題。
そのため、最初のドキュメントは不十分でした。サードパーティの寄稿者からの最高のものとともに、それを使用する方法のいくつかの説明がありました。PyCon 2007で、PyConの調査数によると、「Stacklessの使用」について講演しました。Richard Tewは、これらを収集し、 stackless.comを更新し、新しいPythonリリースがリリースされたときにディストリビューションを維持するという素晴らしい仕事をしてきました。彼は、ゲームシステムの重要な部分としてStacklessを使用するEVEOnlineの開発者であるCCPGamesの従業員です。
CCPゲームは、Stacklessについて話すときに人々が使用する最大の実例でもあります。Stacklessのメインチュートリアルは、GrantOlsonの「StacklessPythonを使用した並行プログラミング入門」です。これもゲーム指向です。これにより、Stacklessはゲーム指向であり、ゲームの方が継続指向であるという偏った考えが人々に与えられると思います。
もう1つの問題は、ソースコードです。元の形式では、Pythonの多くの部分に変更を加える必要があったため、PythonのリーダーであるGuidovanRossumは警戒していました。その理由の一部は、call / ccのサポートでしたが、後で「より高レベルのフォームがある場合にgotoをサポートするのと非常に似ている」として削除されたと思います。この歴史についてはよくわかりません。この段落を「Stacklessは以前はあまりにも多くの変更が必要だった」と読んでください。
それ以降のリリースでは変更は必要なく、TismerはPythonへの組み込みを引き続き推進しました。いくつかの考慮事項がありましたが、公式のスタンス(私が知る限り)は、CPythonはPython実装であるだけでなく、リファレンス実装として意図されており、Jythonでは実装できないためStackless機能は含まれていませんまたはIronPython。
「コードベースの大幅な変更」の計画はまったくありません。Arafangionの引用と参照ハイパーリンク(コメントを参照)は、およそ2000/2001のものです。構造の変更は長い間行われてきました、そしてそれは私が上で述べたものです。現在のスタックレスは安定していて成熟しており、過去数年間でコードベースにわずかな調整を加えただけです。
Stacklessの最後の制限の1つ-Stacklessを強く支持する人はいません。Tismerは現在、PythonforPythonの実装であるPyPyに深く関わっています。彼はPyPyにStackless機能を実装しており、Stackless自体よりもはるかに優れていると考えており、PyPyが未来の道であると感じています。TewはStacklessを維持していますが、アドボカシーには興味がありません。私はその役割を担うことを考えましたが、それからどのように収入を得ることができるのかわかりませんでした。
Stacklessでのトレーニングが必要な場合は、お気軽にご連絡ください。:)