問題タブ [declarative-programming]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
259 参照

scala - 私のアルゴリズムで命令的な PriorityQueue を置き換える

現在、scala.collection.mutable.PriorityQueue を使用して要素を特定の順序で結合するメソッドがあります。たとえば、コードは次のようになります。

コードは書かれたとおりに機能しますが、必然的にかなり必須です。私は PriorityQueue の代わりに SortedSet を使用することを考えましたが、私の試みはプロセスをより複雑に見せます。私がやりたいことを行うための、より宣言的で簡潔な方法は何ですか?

0 投票する
1 に答える
81 参照

programming-languages - 含意を無視し、行動のみを説明する言語を説明する方法

実装ではなく、基本的にプログラムの動作を説明するプログラミング言語を人々がどのように説明するのかを尋ねたかったのです。実装の問題を無視する言語(たとえば、他の言語が同じことを異なる方法で行う異なるクラスまたは関数を持つ可能性がある単一のクラスまたは関数のみを持つ)、代わりに完全に自動化された最適化に依存する言語。

「宣言型」は正しい用語ですか?多分「意図的」?「目標志向」も同様の意味を持っているようです。多分何か他のもの。私がデザインしているLimaと呼ばれる言語がこの説明に当てはまるので、疑問に思っています(http://www.btetrud.com/Lima/Lima-Documentation.html)。Stack Overflowは答えのあるものが好きなので、答えは最も洞察に満ちたコメントを持っている人に行きます。

私はまた、このアイデアがポール・グレアムの百年言語のアイデアにどれほど近いと人々が考えているのか疑問に思っています:http: //www.paulgraham.com/hundred.html。文字列を文字のリストとして扱い、より一般的な「ハッシュテーブル」(つまり連想配列)を優先して配列を取り除くことで彼が提案することは、私が最初にそれを思いついたときにリマでしたことです。

リマの背後にある基本的な考え方は次のとおりです。

  1. 値ベースのプログラミング-値の「タイプ」を気にするロジックを取り除きます。リマにはタイプはなく、値は単なる値です。型は言語にまだ存在しますが、変数が取ることができる値を制限するためだけです-呼び出すマルチメソッドを変更することはできず、値のメモリフットプリントを指示しません。

  2. 記述的プログラミング-コード自体でコードを最適化する必要性(そして実際には能力)を捨てるプログラミング言語について私が上で説明したこと(むしろ最適化は自動化されたオプティマイザーで行われます)

  3. 総合的な言語拡張性-言語自体の言語で任意の構成を書き込む機能(たとえば、「sin」関数を書き直すだけでなく、「if」ステートメント、ループステートメントを書き直し、使用可能なカスタムDSLを作成することもできます言語内および他のDSL内。

0 投票する
2 に答える
3896 参照

apache-flex - mxml がコンポーネント コンストラクターをサポートしないのはなぜですか?

Flex フレームワークの mxml 言語がコンポーネントのコンストラクターをサポートしない、またはコンポーネントのコンストラクター引数を受け入れないのはなぜですか? 私の知る限り、コンストラクター引数を取る場合、mxml で ActionScript オブジェクトを宣言することはできません。その理由が気になります。Adobe による設計上の選択ですか、それとも宣言型言語の動作に関連していますか? たとえば、許可しない理由は次のとおりです。

0 投票する
1 に答える
505 参照

oop - オブジェクト指向言語は宣言型プログラミング言語よりも強力ですか

オブジェクト指向言語は宣言型プログラミング言語よりも強力ですか?強力とは、宣言型プログラミング言語で記述されたプログラムでは解決できない問題のクラスを解決できるということです。

個人的にはそうは思いません。オブジェクト指向言語を使ってプログラムを書くほうが簡単な問題がいくつかありますが、宣言型言語を使っても解決できると思います(難しいかもしれませんが)。

これについてもっと意見を聞きたいです。

0 投票する
5 に答える
26753 参照

functional-programming - 関数型プログラミングと宣言型プログラミングと命令型プログラミング

私は命令型プログラミングに慣れすぎています。命令型プログラミングとは、最終結果を得るために手順を段階的に実行するようコンピューターに指示する通常の方法です。一方、宣言型プログラミングは、入力を渡すだけで、出力がどのように行われるかの手順を記述せずに期待します。私が混乱しているのは関数型プログラミングです。関数型プログラミングは、計算を数学関数の評価として扱い、状態と変更可能なデータを回避するプログラミング パラダイムであり、宣言型言語の一種ではないことを私は知っています。しかし、私はそれがどのように機能するかをまだ理解できません。

フィボナッチ数列を実行する例を見てみましょう。

命令型プログラミング:

宣言型プログラミング:

機能プログラムはどのように機能しますか?

さらに、私の定義が間違っている場合は修正してください。お気軽にコメントください..

0 投票する
5 に答える
2069 参照

haskell - 宣言型言語

Declarative Programming Languagesに関する記事を読んでいました。

このタイプ/パラダイムのプログラミング言語の性質が理解できず、それが命令型言語とは対照的である場合、Haskell などのこのタイプのプログラミング言語でのプログラミングについて読んでから、後でその記事を読む必要がありますか?

0 投票する
1 に答える
115 参照

ios - NSString を Objective-C コントロールに変換する

IOS(objective-c)でWPFのような宣言型プログラミングを再現したい。

WPF では、次のようなコントロールを使用できます。

正確なコードは次のようになります。

これは、Objective-C (IOS 7) で同様の方法で達成できますか? これを実装する方法の例またはヒントを教えてください。

IOS7 で使用できる Composite パターンを実装するライブラリはありますか?

編集:これは本当の質問です。実行できる場合は、実際のプロジェクトでこれを実装したいと考えています。

編集 2: NSString を xib ファイルに変換し、それをビューのコントロールとして表示したいですか?

*編集3:

JSON次のような形式のサーバーからの応答があります。

として解釈される実装ファイル内:

0 投票する
5 に答える
12016 参照

c - C は命令型または宣言型のプログラミング言語ですか

命令型プログラミングと宣言型プログラミングの違いを知るのは非常に紛らわしいですが、実際の用語で両方の違いを説明できる人はいますか?

Cが命令型言語か宣言型言語かを明確にしてください。