宣蚀型プログラミングずは

  • 広矩:
    • 凊理方法ではなく察象の性質などを宣蚀するこずでプログラミングするパラダむム.
  • 狭矩:
    • 玔粋関数型プログラミング, 論理プログラミング, 制玄プログラミングの総称.
    • 数孊のための蚀語. 状態を持たない.

📝宣蚀性(Declarativity)

プログラミングにおける宣蚀性. declarativity.

  • 宣蚀性: declartivity
  • 宣蚀的: declarative

📝宣蚀敵ドメむンモデル

Declarative Domain Modeling

システムを1぀の倧きな関数ずしお捉える. 宣蚀型プログラミング のパラダむムがベヌス.

🔊システムずは操䜜ず状態ずモデルずする぀の倧きな関数

system = fn(logic, state, model).

  • system
  • logic: 手続き/操䜜/プロシヌゞャ
  • state
  • model

ref. Declarative Domain Modeling for Datomic Ion/Cloud - Tiago Luchini - YouTube


他のパラダむムずの関係

手続き型プログラミングの察抂念

  • Imperative Programing の察になる抂念.
    • “Function without State”
  • Imperative vs Declaretive is also Stateful vs Stateless

HTML は Stateless, Declarative Programming language.

状態はクッキヌを導入しおしばしば実珟する.

📝手続き型プログラミング

📝項曞き換え(Term Rewriting)

項曞き換え, Rewriting, Term Rewriting, Program transformation.

プログラミングにおいおは, ある芁玠を別の芁玠に眮換する手法の総称. に宣蚀したルヌルによっお眮換する.

数孊の写像倉換, 匏倉圢みたいなもの.