2010-12-12 9 views
2

私はpuppet宣言型モデルを楽しんでいます。私はこれを私のコードに組み込むことを試みたいと思います。プログラムはどのように宣言的スタイルで行うのですか?

私は現在、Pythonでプログラムしていますが、私はそうしている間に命令的に考える傾向があります。それはグラフィックデザインの私の問題のようなものです。私は最終製品で見たいものを知っていますが、どのように組み立てるか分かりません。

コードを宣言的にするにはどうすれば構いませんか?解決策が「宣言的」であると認識された場合、どのような初期ステップがとられますか?

Functional, Declarative, and Imperative Programming私はこれを読んで、洞察力を少し持ち出しました。

しかし、正確に言葉に私の混乱をそれを置くことはできません:(

EDIT十分ではありません:言葉が来ている:常に宣言のために与えられた例はいくつかの他の高レベルのものという点で与えられる。

Regexenは確かに、宣言しているが、あなたは

メイクは確かに、宣言型であるCのうちのエンジンを作るが、それは

パペットmainifestsはもちろん、宣言されているC.

で書かれていますが、Rubyのコードではありません。

どのような時点で私は言うでしょうか:「さて、方法はありますか、今は宣言部分を始めることができますか?

答えて

2

関数型言語では、命令型言語で記述した場合は関数型で記述し、宣言型言語では宣言型で記述します。

上記のように(すべての「クロススタイル」は許されません)、言語で記述するときは言語のスタイルで記述します。 「命令的」または「機能的」言語で「宣言的に」書く場合、宣言的なDSLやAPIを記述するのは、 DSL/API。

例えば、make(またはantのような任意の数のXML言語)は、ちょうど宣言的なDSL(ぼかしを含む)です。ホスト言語は重要ではありません。これは、ほぼすべてのTuring Completeホスト言語に対して一般化することができます。

+1

私はほうきが必要です、スケールはちょうど私の目から落ちました。私はこれを1つの言語の観点から見ています。ウィキッドそれは私が自分自身にだけ関わるべき次の層です。下で行われる仕事が何であれ、私の心配ではありません。驚くばかり。ありがとう! – chiggsy

関連する問題